目录
- 数据结构和算法有何作用
- 数据结构概述
- 算法概述
- 一些定义
- 小结
数据结构和算法有何作用?
数据结构是对计算机内存中的数据的一种安排。数据结构包括数组、链表、栈、二叉树、哈希表等。
算法是对这些结构中的数据进行各种处理。例如查找、排序等。
数据结构概述
数据结构分为很多中,下面表格来区分各自的优缺点以及特性。
数据结构 | 优点 | 缺点 |
---|---|---|
数组 | 插入快,下标访问,可以快速存、取 | 查找、删除慢,大小固定 |
有序数组 | 比无序数组查找快 | 删除、插入慢,大小固定 |
栈 | 后进先出的存、取 | 存、取、查慢 |
队列 | 先进先出的存、取 | 存、取、查慢 |
链表 | 插、删快 | 查找慢 |
二叉树 | 查、插、删快 | 删除算法复杂 |
红黑树 | 查、插、删快(树平衡) | 算法复杂 |
2-3-4树 | 类似红黑树,对磁盘存储有用 | 算法复杂 |
哈希表 | 插入快,关键字存取快 | 删除慢,未知关键字存取慢,存储空间不均匀。 |
堆 | 插、删快,对最大项存取快 | 其他数据项存取慢 |
图 | 对现实时间建模 | 算法慢且复杂 |
算法概述
算法是直接适用于某些特殊的数据结构。对于大多数数据结构来说,都知道如何:
- 插入一条数据。
- 查找某一个特定数据。
- 删除某一个特定的数据。
- 迭代结构中的每个数据项。
- 可能还存在排序、修改等操作。
一些定义
- 数据库(database): 某一个特定情况下所有要查阅的数据。数据库中每一条数据都是同样格式的。
- 记录(record): 指数据库中划分成的单元,为存储信息提供一个结构格式。
- 字段(field): 一条记录被划分为几个字段。
小结
- 数据结构是指数据在计算机内存空间中或者磁盘中的组织形式。
- 正确选择数据结构使程序的效率大大提高。
- 数据结构的例子有数组、栈、链表等。
- 算法是完成特定任务的过程。
- Java中算法经常通过类的方法实现。
- 数据结构的用途是作为程序员的工具。
- 数据库是指许多类似的记录组成的数据存储集合。