《数据结构》第2章 线性结构.ppt

《数据结构》第2章 线性结构

1. 顺序表的存储 ①数组名——存储的空间 ②表长——结点个数 ③表头指针——表头的位置,对于某些特殊的线性表,有特殊的用途 typedef struct list{ ElemType *data; int size;//当前的最大长度 int n;//当前表长 int h;//当前表头,如有必要可设 }List; 2. 顺序表的运算 ①建立顺序表 ②判空表 n = 0 ③求顺序表第 i 结点的值 s[ i - 1 ] s[ h + i - 1 ] 2. 顺序表的运算 ④插入结点 在结点i后插入一个新结点,如何操作? anew 腾出插入位置: for (j=n-1; j=i; j--) s[j+1]=s[j] 插入结点: s[i] =v 表长加一: n++ for (j=n-1; j=i; j--) s[h+j+1]=s[h+j] s[h+i]=v 时间效率 与插入位置有关: 当 i=0 时,执行 n 次; 当 i=n 时,执行 0 次; 平均约 n/2 次 O(n) 级 2. 顺序表的运算 ⑤删除结点 删除算法描述 判断表不是空表 判断删除元素的位置合法 将删除位置下面的元素从小到大依次左移 表长-1 顺序表应用的例: 1. 用顺序表做插入,选择排序.

文档评论(0)

1亿VIP精品文档

相关文档