news 2026/4/22 19:38:40

数据结构的基本概念和算法

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
数据结构的基本概念和算法

一、数据结构的基本概念和算法

1. 数据结构的基本概念

1)数据

定义:

所有能输入到计算机中描述客观事物的符号,包括文本、声音、图像、符号等
示例: 微信发送的文字、声音、二维码都属于数据

特点:

必须能被计算机识别和处理

2)数据项

定义:

具有独立含义的数据最小单位,也称域

特点:

不可分割的最小单位
示例: 学生信息表中的学号、姓名、班级、成绩都是独立的数据项

3)数据元素

定义:

数据的基本单位,也称节点或记录
组成: 由若干个数据项构成
示例: 学生信息表中的一行记录(学号+姓名+班级+成绩)构成一个数据元素
区别: 数据项是最小单位,数据元素是基本单位

4)数据类型

定义:

数据的不可分割的基本单位

特点:

是数据类型的本质特征
记忆点: 数据类型与数据项的区别在于前者是不可分割的单位,后者是有独立含义的最小单位

5)逻辑结构和存储结构

逻辑结构

定义:

数据元素间抽象化的相互关系,与存储无关,独立于计算机

特点:

从具体问题中抽象出来的数学模型

分类:

集合:元素间无特定关系
线性结构:一对一关系(如顺序表、链表)
树形结构:一对多关系(如二叉树)
图形结构:多对多关系(如网状结构)

存储结构

定义:

数据元素及其关系在计算机中的存储方式

分类:

顺序存储:连续空间存储(如数组)
链式存储:通过指针连接(如链表)
散列存储:通过哈希函数定位
索引存储:建立索引表
常见组合: 顺序存储和链式存储是最常用的两种

2. 算法

1)概念

定义:

对特定问题求解步骤的描述
评价标准: 执行时间(时间复杂度)和占用空间(空间复杂度)

五个特性:

有穷性:有限步骤内完成
确定性:无歧义
可行性:可执行
输入:零个或多个输入
输出:至少一个输出

2)好算法的标准

正确性: 满足问题需求,结果准确
易读性: 命名规范,注释恰当
健壮性: 处理非法输入(如年龄为负值)
高效性: 执行时间短
低存储性: 占用空间少

3)时间复杂度

定义: 算法基本运算的执行次数作为度量标准
计算原则: 忽略低阶项和常数项

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 5:23:34

Java毕设项目推荐-基于Java的网上宠物店管理系统宠物销售、服务预约、库存管理、客户互动【附源码+文档,调试定制服务】

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/4/17 15:41:01

英伟达圣诞偷袭,200亿美元收购Groq

诸神缄默不语-个人技术博文与视频目录 看了substack的FOMO研究院圣诞特别篇介绍groq, LPU和英伟达实质性收购groq的文章。感觉写的非常好,及时分享。 (因为限时48小时免费,趁还能看赶紧写) Groq(不是马斯克的grok&am…

作者头像 李华
网站建设 2026/4/18 3:03:17

transformer-explainer

https://poloclub.github.io/transformer-explainer/

作者头像 李华
网站建设 2026/4/22 1:15:26

真实污水处理项目中的S7-1200实战经验

西门子PLC1200真实项目案例程序十 KTp1200屏画面 十电路图 博途V16 V17版,模拟量输入输出处理,液位设置处理,流量处理,双设备轮换,modbus通讯控制变频器,事件记录,污水处理设备程序最近刚完成某…

作者头像 李华
网站建设 2026/4/20 5:36:18

JavaScript 常见算法复杂度总结(大O表示法)

大O表示法具体含义总结表时间复杂度详解大O表示名称含义示例增长曲线执行时间(n1000)假设O(1)常数时间执行时间不随输入规模变化数组索引访问、哈希表查找水平线1单位时间O(log n)对数时间执行时间随输入规模对数增长二分查找、平衡树操作缓慢上升曲线10单位时间O(√n)平方根时…

作者头像 李华