数据结构总复习课件.ppt

数据结构总复习课件

第一章 绪论 什么是数据结构 一些基本概念和术语 算法和算法分析 时间复杂度的渐进表示法 第一章 绪 论 基本概念和术语 数据(data)—所有能输入到计算机中去的描述客观事物的符号 数据元素(data element)—数据的基本单位,也称节点(node)或记录(record)。有时一个数据元素可以由若干数据项(Data Item)组成。 数据项(data item)—有独立含义的数据最小单位,也称域(field) 数据结构(data structure)—数据元素和数据元素关系的集合 第一章 绪 论 线性结构特点 在数据元素的非空有限集中: 存在唯一的一个被称作“第一个”的数据元素 存在唯一的一个被称作“最后一个”的数据元素 除第一个外,集合中的每个数据元素均只有一个前驱 除最后一个外,集合中的每个数据元素均只有一个后继 2.2 线性表的顺序存储结构 顺序表的插入 定义:线性表的插入是指在第I(1?i ? n+1)个元素之前插入一个新的数据元素x,使长度为n的线性表 2.3 线性表的链式存储结构 线性链表定义 插入:在线性表两个数据元素a和b间插入x,已知p指向a 3.1 栈 n维数组的存储地址计算公式 b1,b2,...,bn是n维的维界,数组元素A(j1,j2,...,jn)的存储位置为 LOC[j1,j2,...jn]= LOC[0,0,...,0] + (b2*b3*...*bn*j1 + b3*...*bn*j2 + ...... + bn*jn-1 + jn )*L n-1 n = LOC[0,0,...,0] + ( ? ji ? bk + jn)*L i=1 k=i+1 例: 在C语言中,设 数组A[5][6][7][8]的首地址为 2000, 每个元素占2个字节; 求元素A[3][4][5][4]的地址. LOC[3,4,5,4] = 2000 + (6*7*8*3 + 7*8*4 + 8*5 + 4)*2 = 2000 + ( 336*3 + 56*4 + 8*5 + 1*4)*2 = 2000 + (1008 + 224 + 40 + 4)*2 = 4552 5.2 矩阵的压缩存储 第六章 树和二叉树 第六章 树和二叉树 6.1 树的定义和基本概念 6.2 二叉树 6.2.1 树的定义和基本术语 6.2.2 二叉树的性质 6.2.3 二叉树的存储结构 6.3 遍历二叉树 6.3.1 遍历二叉树 6.3.2 线索二叉树 6.4 树和森林 6.4.1 树的存储结构 6.4.2 森林与二叉树的转换 6.5 赫夫曼树及其应用 基本术语 结点(node)——指树中的一个数据元素,包括数据项及若干指向其子树的分支。一般用一个字母表示。 结点的度(degree)——结点拥有的子树数 叶子(leaf)——度为0的结点,也叫终端结点。 分枝结点——除叶子结点外的所有结点,也叫非终端结点。 孩子(child)——结点子树的根称为该结点的孩子 双亲(parents)——孩子结点的上层结点叫该结点的~ 祖先结点——从根结点到该结点所经过分枝上的所有结点为该结点的祖先,如图6-1c中M的祖先有A,D ,H 。 子孙结点——某一结点的子女及子女的子女都为该结点子孙。 基本术语 兄弟(sibling)——具有同一个双亲的结点 树的度——一棵树中最大的结点度数 结点的层次(level)——从根结点算起,根为第一层,它的孩子为第二层…… 深度(depth)——树中结点的最大层次数 有序树——若一棵树中所有子树从左到右的排序是有顺序的,不能颠倒次序。称该树为有序树。 无序树——若一棵树中所有子树的次序无关紧要,则称为无序树。 森林(forest)——m(m?0)棵互不相交的树的集合.一棵树可以看成是一个特殊的森林。

文档评论(0)

1亿VIP精品文档

相关文档