数据结构的三要素以及数据类型和抽象数据类型

一.数据结构的三要素:


二.逻辑结构:


三.数据的运算:


三.数据的物理结构(存储结构):

1.数据的存储结构:有4种

  • 顺序存储

  • 链式存储

  • 索引存储

  • 散列存储

顺序存储 数据之间必须相邻

链式存储,索引存储和散列存储 的数据之间是不相邻的,即离散,也叫非顺序存储或离散存储。

2.顺序存储:

3.链式存储:

4.索引存储:

5.散列存储:

6.不同的存储方式会有不同的后果:

如连续的数据可用顺序存储,找不到连续的数据可用非顺序存储

如上述例子中在b和d之间插入c,对于顺序存储插入c的话要把大量元素进行移动空出位置后才能插入c,

而非顺序存储只需要在b和d之间找一个空的地方插入c再修改指针指向的地址即可,效率比顺序存储高。

7.总结:


四.数据类型和抽象数据类型:

1.数据类型:

2.抽象数据类型:


相关推荐
CS创新实验室10 小时前
从顺序表到动态数组:数据结构的永恒基石与现代语言的优雅封装
数据结构·算法
8Qi812 小时前
LeetCode 23. 合并 K 个升序链表 —— 小顶堆(PriorityQueue)
数据结构·算法·leetcode·链表·
QiLinkOS12 小时前
《打破“用爱发电”:一种基于 Gitee 与时间戳的开源权益分配机制探索》
c语言·数据结构·c++·科技·算法·gitee·开源
Boom_Shu14 小时前
长方形的关系
数据结构·c++·算法
Lsk_Smion15 小时前
力扣实训 _ [543].二叉树的直径 _ [23].合并K个升序列表
数据结构·算法·leetcode
ID_1800790547317 小时前
淘宝商品详情数据接口深度解析:架构、鉴权、数据结构与实战
数据结构·架构
散峰而望18 小时前
【算法练习】算法练习精选:陶陶摘苹果(基础+升级)、Music Notes、字串变换,你能AC几道?
数据结构·c++·算法·leetcode·贪心算法·github·动态规划
凤凰院凶涛QAQ18 小时前
《Java版数据结构 & 集合类剖析》集合框架的封装设计与顺序表:“从 Iterable 到 ArrayList:集合框架的‘职业树“
java·开发语言·数据结构
8Qi819 小时前
LeetCode 148. 排序链表 —— 解法一:自顶向下递归(分治 + 归并)
数据结构·算法·leetcode·链表·递归·分治·归并
8Qi819 小时前
LeetCode 148. 排序链表 —— 解法二:自底向上归并(迭代,O(1) 空间)
数据结构·算法·leetcode·链表·归并·迭代