数据结构的学习笔记
1. 绪论
1.1 数据结构的概念
数据结构课程内容体系:
| 层次\方面 | 数据表示 | 数据处理 |
|---|---|---|
| 抽象 | 逻辑结构 | 基本运算 |
| 实现 | 存储结构 | 算法 |
数据、数据元素与数据结构:
- 数据:能够被计算机识别、存取和加工处理的符号、字符、图形、图像、声音、视频信号等
- 数据元素:数据的基本单位
- 数据结构:数据的组织形式
数据结构包含:
- 数据的逻辑结构
- 数据的存储结构
- 数据的运算
1.2 逻辑结构与存储结构
逻辑结构
根据数据元素之间的不同特性,可以划分出以下四种基本的逻辑结构
- 集合结构
- 线性结构
- 树形结构
- 图结构
关于数据结构注意以下几点
- 逻辑结构与数据元素本身的形式和内容无关
- 逻辑结构与数据的相对位置无关
- 逻辑结构与所含数据元素的个数无关
存储结构
数据元素与数据元素之间的关系在计算机中可以有以下四种基本存储结构
- 顺序存储结构
- 链式存储结构
- 索引存储结构
- 哈希存储结构
1.3 算法与算法分析
算法是建立在数据结构基础上对特定问题求解步骤的一种描述,是若干条指令组成的有限序列。
算法必须满足以下性质:
- 有穷性
- 确定性
- 可行性
- 输入
- 输出
算法分析和复杂度计算
算法分析是研究和比较各种算法的性能与优劣。
算法分析的两个主要方面:
- 时间复杂度
- 空间复杂度
时间复杂度
for(i=0;i<n;i++) n+1
for(j=0;j<n;j++) n(n+1)
{
C[i][j]=0; n^2
for(k=0;k<n;k++) n^2(n+2)
C[i][j]=C[i][j]+A[i][j]*B[k][j]; n^3
}
T(n)=O(n^3)

浙公网安备 33010602011771号