数据结构与算法第一章
数据结构与算法 (第一次课)
数据元素是数据的基本单位
数据项是是数据的最小不饿分割单位
数据>数据元素>数据项
数据对象是数据元素相同的集合
数据对象是性质相同的数据元素的集合
数据元素是数据的个体
数据对象是数据的子集
- 数据>数据对象>数据元素>数据项
数据结构:数据的运算和实现,逻辑结构和物理结构(存储结构)
存储结构是逻辑结构的映像和元素本身的映像
逻辑结构是数据结构的抽象,存储结构是数据结构的实现
逻辑机构的种类
- 线性结构
线性结构有且只有一个开始和终端节点,并且每个节点都最多有一个直接前趋或者直接后继
例如: 线性表、队列、栈、串
- 非线性结构
例如:图、树
逻辑结构划分第二种方式
- 集合结构:数据元素之间除了同属于一个集合外没有任何其他关系
- 线性结构:数据元素之间存在一对一的关系
- 树形结构:数据元素之间存在一对多的关系
- 图状(网状)结构:数据元素之间存在多对多的关系
存储结构的种类
- 顺序存储结构
- 链式存储结构
- 索引存储结构
- 散列存储结构
顺序结构
用一串连续的存储单元依次存储数据
链式结构
任意的存储单元数据元素之间的逻辑关系用指针来表示
索引结构
存储数据的同时还建立索引表
索引的一般形式是:关键字+地址
索引有:稠密索引和稀疏索引
散列存储结构
根据关键字计算出该结点的存储地址
数据类型和抽象数据类型
基本数据类型
构造数据类型
指针、空等数据类型
typedef定义数据类型
数据类型是一种性质相同元素的结合以及值集合上的一组操作
抽象数据类型(ADT:abstract data type):抓住本质属性,舍弃不必要属性的相同元素的结合以及值集合上的一组操作,包括:数据对象,数据对象上的关系集,数据对象的基本操作;
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· .NET Core 中如何实现缓存的预热?
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统