“数据结构”是很基本的东西,在此通过《数据结构学习笔记》系列的文章对这方面的基础知识进行梳理和总结,进而达到掌握的目的。
1、什么是数据结构?定义?数据结构是计算机存储、组织数据的方式。存在关系的数据集合。
定义:数据结构是指相互之间存在着一种或多种关系的数据元素的集合和该集合中数据元素之间的关系组成。
记为: Date-Structure=(D,R),其中D是数据元素的集合,R是该集合中所有元素之间的关系的有限集合。
数据结构包括“逻辑结构”和“存储结构”,对数据结构的运算就涉及到了算法。这些都属于数据结构的研究对象范畴了。
两种结构:
数据的逻辑结构:反映数据元素之间的关系的数据元素集合的表示。数据的逻辑结构包括集合、线形结构、树形结构和图形结构四种。
数据的存储结构:数据的逻辑结构在计算机存储空间种的存放形式称为数据的存储结构。常用的存储结构有顺序、链接、索引等存储结构。
2、有哪些常用的数据结构?
数组、栈、队列、链表、树、图、堆、散列表。
形象点来说,有集合、线性结构、树形结构、图状或网状结构。(逻辑结构)
在接下来的日子里,我将对比较重要的最基本的数据结构进行梳理和总结。
3、数据结构与算法的关系
算法的设计取决于数据(逻辑)结构,而算法的实现依赖于采用的存储结构。这些都属于数据结构的研究对象范畴。不纠结。
4、什么是抽象数据类型(ADT)?它有什么用?
抽象数据类型:
一个数学模型以及定义在该模型上的一组操作。抽象数据类型实际上就是对该数据结构的定义(结构+操作)。因为它定义了一个数据的逻辑结构以及在此结构上的一组算法。