第2周线性表(上)第6讲-本周小结数据结构.pdf
《第2周线性表(上)第6讲-本周小结数据结构.pdf》由会员分享,可在线阅读,更多相关《第2周线性表(上)第6讲-本周小结数据结构.pdf(19页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、知识点: 线性表概念线性表概念 顺序表及算法设计顺序表及算法设计 单链表及算法设计单链表及算法设计 1/19 1线性表两类存储结构的比较 I.顺序表 II.链表 2/19 插入和删除操作需要移动大量元素。插入和删除操作需要移动大量元素。 初始空间大小分配难以掌握初始空间大小分配难以掌握。 缺点缺点 存储密度大:无须为表示线性表中元素之间的逻辑关存储密度大:无须为表示线性表中元素之间的逻辑关 系而增加额外的存储空间。系而增加额外的存储空间。 具有随机存取特性。具有随机存取特性。 优点优点 3/19 存储密度小:为表示线性表中元素之间的逻辑关系而需存储密度小:为表示线性表中元素之间的逻辑关系而需
2、要增加额外的存储空间(指针域)要增加额外的存储空间(指针域)。 不具有随机存取特性不具有随机存取特性。 缺点缺点 由于采用节点的动态分配方式,具有良好的适应性。由于采用节点的动态分配方式,具有良好的适应性。 插入和删除操作只需修改相关指针域,不需要移动元素插入和删除操作只需修改相关指针域,不需要移动元素。 优点优点 4/19 2线性表的算法设计 数据的存储结构顺序表:链表? 算法的处理过程用C/C+语言描述。 5/19 顺序表用数组表示 借鉴数组处理方法(存、取元素) 顺序表不同于数组 顺序表是线性表的一种存储结构 注意:注意: 线性表线性表L:(:(1,2,3) 数组:数组:int a=1,
3、2,3; 而数组:而数组:int b=空,空,1,2,空,空,3;不对应;不对应L 6/19 基于顺序表基本操作的算法设计基于顺序表基本操作的算法设计 查找元素查找元素 插入元素插入元素 删除元素删除元素 7/19 基于特殊方法的顺序表算法设计基于特殊方法的顺序表算法设计 将整数顺序表将整数顺序表L以第一个元素为分界线(基准)进行划分以第一个元素为分界线(基准)进行划分 在顺序表在顺序表L中删除所有值为中删除所有值为x的元素的元素 8/19 荷兰国旗问题荷兰国旗问题:设有一个条块序列,每个条块为红设有一个条块序列,每个条块为红 (0)、白()、白(1)、兰()、兰(2)三种颜色中的一种。假设该
4、序列)三种颜色中的一种。假设该序列 采用采用顺序表顺序表存储,设计一个时间复杂度为存储,设计一个时间复杂度为O(n)的算法,使得的算法,使得 这些条块按红、白、兰的顺序排好,即排成荷兰国旗图案。这些条块按红、白、兰的顺序排好,即排成荷兰国旗图案。 例如:例如:1 0 2 1 0 0 1 2 2 1 0 2 012010122012 000011112222 本算法本算法 9/19 解:解: 012010122012 ik j初始状态(i=-1,k=n,j=1) 用用0i表示表示0元素区间。元素区间。 kn- -1表示表示2元素区间。元素区间。 中间部分为中间部分为1元素区间。元素区间。 用用j
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 森林经营规划
限制150内