目录
什么是数据结构
语言出生顺序
基本概念
数据的逻辑结构
数据的存储结构
顺序储存
链式存储
索引存储
散列存储
基本概念
第一卷《基本算法》
第二卷《半数字化算法》
第三卷《排序与搜索》
第四卷《组合算法》
什么是数据结构
数据结构研究计算机数据间关系;
包括数据的逻辑结构和存储结构及其操作;
语言出生顺序
1972 – C
1980 – C++
1984 – MATLAB
1986 – Objective-C
1991 – Python
1993 – Ruby
1995 – PHP
1995 – Java
1995 – JavaScript
2001 – C#
2003 – Scala
2009 – Go
基本概念
1.数据(Data) 数据即信息的载体,是能够输入到计算机中并且能被计算机识别、存储和处理的符号总称。
2.数据元素(Data Element) 数据元素是数据的基本单位,又称之为记录(Record)。一般,数据元素由若干基本项(或称字段、域、属性)组成。
产品编号 | 产品名称 | 规 格 | 出厂日期 | …… |
0001 | TV | 29 | 1999/09 | …… |
数据的逻辑结构
表示数据运算之间的抽象关系
按每个元素可能具有的直接前趋数和直接后继数将逻辑结构分为“线性结构”和“非线性结构”两大类。
数据的逻辑结构
集合——数据元素间除“同属于一个集合”外,无其它关系
线性结构——一个对一个,如线性表、栈、队列
树形结构——一个对多个,如树
图状结构——多个对多个,如图
数据的存储结构
存储结构:逻辑结构在计算机中的具体实现方法。
存储结构是通过计算机语言所编制的程序来实现的,因而是依赖于具体的计算机语言的。
顺序存储(Sequential Storage):
将数据结构中各元素按照其逻辑顺序存放于存储器一片连续的存储空间中
如c语言的一维数组,如表 L=(a1,a2,……,an)的顺序结构
a1 | a2 | …… | …… | an |
顺序储存
链式存储
索引存储
散列存储
基本概念