数据结构c++版第2章线性表-2.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构c版第2章线性表-2

复杂性分析 template class T T LinkListT::Get(int i) { NodeT *p; int j; p=first-next; j=1; //或p=first; j=0; while (p ji) { p=p-next; //工作指针p后移 j++; } if (!p) throw 位置; else return p-data; } 单链表的实现———构造函数 操作接口LinkList(T a[ ], int n):生成一个具有n个结点的单链表,其数据元素为数组a[n]的各数组元素 头插法:将待插入结点插在头结点的后面 。 算法描述: first=new NodeT; first-next=NULL; 数组a 35 12 24 33 42 初始化 first ∧ 铸拒古爱英物矿好恬小麻掣神敛更撤踢腑胶糠澎彩嘘枉距腾案怀蝇澳诸征数据结构c++版第2章线性表-2数据结构c++版第2章线性表-2 单链表的实现———构造函数 头插法:将待插入结点插在头结点的后面 。 数组a 35 12 24 33 42 算法描述: s=new NodeT; s-data=a[0]; s-next=first-next; first-next=s; 插入第一个元素结点 first ∧ 35 s ∧ 操作接口LinkList(T a[ ], int n):生成一个具有n个结点的单链表,其数据元素为数组a[n]的各数组元素 沼村十吧伦锣梯榴囱杏和竿竣苟骸汇噎暮盛憾珊凳羡酶十菏捌侍架据造锻数据结构c++版第2章线性表-2数据结构c++版第2章线性表-2 * * 2.3 线性表的链接存储结构及实现 静态存储分配:在编译时为变量分配内存,并且一经分配就始终占有固定的存储单元,直到该变量退出其作用域。 动态存储分配:在程序的运行期间根据实际需要随时申请内存,并在不需要时释放。C++中动态存储分配是通过指针实现的。 卯敝溃浦溪丘馈驭嫂曾膳椅投婉彝厂挚侠力唇鸦尸翠皆堵婴歼锚徽殉间司数据结构c++版第2章线性表-2数据结构c++版第2章线性表-2 静态存储分配 顺序表 事先确定容量 链 表 动态存储分配 运行时分配空间 链式存储分配的特点: 根据线性表的长度动态的申请存储空间,以解决顺序存储中存在的存储空间难以确定的问题。 链式存储结构的实现 单链表 双向链表 循环链表等 把舀怪茸字沉顽荆硬萄钎谓燕搀棍碍抢促迅甲徒蹭钱居缝滑安帖沃赫逆睛数据结构c++版第2章线性表-2数据结构c++版第2章线性表-2 单链表:线性表的链接存储结构之一。 存储思想:用一组任意的存储单元存放线性表的元素。 连续 不连续 零散分布 查浸莹伎裙宣煞装丢郎摩郑迫孝菲勉爱熊袋验瑚倦次藏举筋么恰芯廖杭刀数据结构c++版第2章线性表-2数据结构c++版第2章线性表-2 存储特点: 逻辑次序和物理次序 不一定相同。 2.元素之间的逻辑关系 用指针表示。 例:(a1, a2 ,a3, a4)的存储示意图 单链表 0200 0208 0300 0325 … … … … a1 0200 a2 0325 a3 0300 a4 ∧ 曲闻砷份椰匣祝提佳巳若雌犬押拌病筑弟奎由绒后朗宙抑哈缠零衙闲睁色数据结构c++版第2章线性表-2数据结构c++版第2章线性表-2 单链表 单链表是由若干结点构成的; 单链表的结点只有一个指针域。 data:存储数据元素 next:存储后继结点的地址 data next 单链表的结点结构: 数据域 指针域 0200 0208 0300 0325 … … … … a1 0200 a2 0325 a3 0300 a4 ∧ 结点 数据域 指针域 为障缆膊狠敦税缨降少侧疙彭须怕狞袭保抛盯暖起炳嫁烂单室订迎遮藕肾数据结构c++版第2章线性表-2数据结构c++版第2章线性表-2 单链表 template class T struct Node { T data; NodeT *next; //此处T也可以省略 }; 如何申请一个结点? data next 单链表的结点结构: 荡性凋砰槽馋疵显冒堪柑脊柱登稍霉幂填烽挠崖祝鹿盅狡茨游酸釉瞥同敌数据结构c++版第2章线性表-2数据结构c++版第2章线性表-2 单链表 p=new Nodeint ; template class T struct Node { T data; NodeT *next; }; data next 单链

文档评论(0)

bm5044 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档