1

什么是数据结构?

一般来说, 用计算机解决一个具体问题时, 大致需要经过下列几个步骤:

1. 从具体问题中抽象出一个适当的数学模型
2. 设计一个解此模型的算法
3. 编写程序, 进行测试, 调整直至得到最终的解.

寻求数学模型的实质是分析问题, 从中提取操作的对象, 并找出这些操作对象之间含有的关系, 然后用数学的语言加以描述.

数据结构:是相互之间存在的一种或多种特定关系的数据元素的集合.

数据元素之间, 通常有下列4种基本结构:

1. **集合:** 结构中的数据元素之间, 除了"同属于一个集合"之外, 别无其他的关系.
2. **线性结构:** 结构中的数据元素之间存在 **一对一** 的关系.(例如 *链表* )
3. **树型结构:** 结构中的数据元素之间存在 **一对多** 的关系.(例如 *二叉树* )
4. **图状结构:** 结构中的数据元素之间存在 **多对多** 的关系.(例如 *图* )

都有哪些数据结构:

1. 线性表
2. 栈
3. 队列
4. 数组和广义表
5. 树和二叉树
6. 图
7. 散列
8. 堆

由数据结构衍生出的算法

1. 查找(二叉搜索树, 图的广度优先搜索, 图的深度优先搜索)
2. 排序(图的拓扑排序, 堆排序)

Striveonger
12 声望0 粉丝

Bug 一样的人生, 不需要解释.