- 1、本文档共51页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第二部分 数据结构
主讲教师:王永波
ybwang@cumt.edu.cn
中国矿业大学环境与测绘学院
2017年4月11日
提纲
概述
线性表
栈与队
树与二叉树
图
查找
排序
二、线性表
1、线性表的逻辑结构
4
元素1
元素2
元素3
2、定义
定义
n( ? 0)个数据元素的有限序列
存储结构
顺序表(向量),链表
特点
除第一个元素外,其他每一个元素有一个且仅有一个直接前驱。
除最后一个元素外,其他每一个元素有一个且仅有一个直接后继。
3、线性表的运算
基本运算
插入:在两个确定元素之间插入一个新元素
删除:删除线性表中某个元素
查找:按某种要求查找线性表中一个元素
排序:按给定要求对表中元素重新排序
4、顺序存储线性表
顺序存储结构/向量式存储结构
将线性表中的元素相继存放在
一个连续的存储空间中。
可利用一维数组描述存储结构
设:已知线性表中每个元素占l个单元,线性表内存首地址为:adr(a1)=b,则线性表中第i个元素的存储地址为
adr(ai)=adr(a1)+(i-1)l
4.1 顺序表类的定义
template class Type
class CSeqList {
//顺序表存储数组
Type *data;
//最大允许长度
int MaxSize;
//当前最后元素下标
int last;
public:
CSeqList ( int MaxSize = defaultSize );
~CSeqList ( ) { delete [ ] data; }
int Length ( ) const
{ return last+1; }
// 查找
int Find ( Type x ) const;
int Locate ( int i ) const; //定位
int Insert (int i, Type x); //插入
int Remove (int i); //删除
int Next ( Type x ) ; //后继
int Prior ( Type x ) ; //前驱
int IsEmpty ( ) { return last ==-1; }
int IsFull ( )
{ return last == MaxSize-1; }
Type Get ( int i ) { //提取
return i 0 || i last?NULL : data[i];
}
}
8
4.1 顺序表(SeqList)类的定义
class CSeqList {
//顺序表存储数组
int *data;
//最大允许长度
int MaxSize;
//当前最后元素下标
int last;
public:
CSeqList ( int MaxSize = defaultSize );
~CSeqList ( ) { delete [ ] data; }
int Length ( ) const
{ return last+1; }
// 查找
int Find (int x ) const;
int Locate (int i ) const; //定位
int Insert (int i, int x); //插入
int Remove (int i); //删除
int Next (int x ) ; //后继
int Prior (int x ) ; //前驱
int IsEmpty ( ) { return last ==-1; }
int IsFull ( )
{ return last == MaxSize-1; }
int Get ( int i ) { //提取
return i 0 || i last?NULL : data[i];
}
}
9
4.2 顺序存储结构的插入、删除
插入
线性表的插入是指在第i(1?i ? n+1)个元素之前插入一个新的数据元素x,使长度为n的线性表变成长度为n+1的线性表
操作:将第i至第n共(n-i+1)个元素后移
a1
a2
…
ai-1
…
an
ai
x
4.
您可能关注的文档
- (17三15钟炜等)如何发挥骨干教师在校本研修工作中的引领作用(校本新讲座三之15)-副本论述.ppt
- (152号文件附件)机电提升系统专项整治活动排查表(表格)论述.doc
- (2014秋开学)人教版物理九年级全册第十五章+电流和电路+单元测(含)论述.doc
- (2015年)豆制品废水处理设计方案论述.doc
- (2016届)学前教育专业毕业班毕业论文通知论述.doc
- (DCS)版新能源ETS技术协议论述.doc
- (STRUTS2.3.4+SPRING3.2+HIBERNATE4.1.1)SSH框架整合包括JAR包详解论述.pdf
- (XX项目)商品房买卖合同补充协议论述.doc
- (安全监察部)9.14论述.doc
- (北师大版)Unit_14_Careers_知识点总结论述.docx
- 第12课 大一统王朝的巩固 课件(20张ppt).pptx
- 第17课 君主立宪制的英国 课件.pptx
- 第6课 戊戌变法 课件(22张ppt).pptx
- 第三章 物态变化 第2节_熔化和凝固_课件 (共46张ppt) 人教版(2024) 八年级上册.pptx
- 第三章 物态变化 第5节_跨学科实践:探索厨房中的物态变化问题_课件 (共28张ppt) 人教版(2024) 八年级上册.pptx
- 2025年山东省中考英语一轮复习外研版九年级上册.教材核心考点精讲精练(61页,含答案).docx
- 2025年山东省中考英语一轮复习(鲁教版)教材核心讲练六年级上册(24页,含答案).docx
- 第12课近代战争与西方文化的扩张 课件(共48张ppt)1.pptx
- 第11课 西汉建立和“文景之治” 课件(共17张ppt)1.pptx
- 唱歌 跳绳课件(共15张ppt内嵌音频)人音版(简谱)(2024)音乐一年级上册第三单元 快乐的一天1.pptx
文档评论(0)