1.1什么是数据结构
数据结构(mooc上浙江大学数据结构的笔记)
1.1 什么是数据结构
官方统一定义--没有
- "数据结构是数据对象,以及存在于该对象的实例和组成实例的数据元素之间的各种联系。这些联系可以通过定义相关的函数来给出"
- Sartaj Sahni,《数据结构、算法与应用》
- "数据结构是ADT的(抽象数据类型Abstract Data Type)的物理实现。"
- Clifford A.Shaffer,《数据结构与 算法分析》
- "数据结构(data structure)是计算机中存储、组织数据的方式。通常情况下,精心选择的数据结构可以带来最优效率的算法。"
- 中文维基百科
解决问题方法的效率,跟数据的组织方式有关。
解决问题方法的效率,跟空间的利用效率有关。
解决问题方法的效率,跟算法的巧妙程度有关
c语言计时工具
clock():捕捉从程序开始到运行clock()被调用时所耗费的时间。这个时间单位是clock tick,即"时钟打点"。
常数CLK_TCK:机器时每秒所走的时钟打点数。
所以到底什么是数据结构???
- 数据对象在计算机的组织方式
- 逻辑结构
- 物理存储结构
- 数据对象必定与一系列加上其他的操作相关联
- 完成这些操作所用的方法就是算法
抽象数据类型(Abstract Data Type)
- 数据类型
- 数据对象集
- 数据集合相关联的操作集
- 抽象:描述数据类型的方法不依赖于具体实现
- 与存放数据的机器无关
- 与数据存储的物理结构无关
- 与实现操作的算法和编程语言均无关
只描述数据对象集合相关操作集"是什么",并不涉及"如何做到的问题"。