线性表_2表.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2.3 链 表 (1)静态链表: (2)动态链表: 2.3.2 单链表运算的实现 (2)求单链表长度 (3)按序号取元素 (4)按值查询元素 (5)插入 插入算法: (6)删除 删除算法: (7)单链表的构造 几种不同的插入方法: 尾插法建立单链表 头插法建立单链表 2、单链表的应用 算法: 2.3.3 其它形式的链表结构 带尾指针的单循环链表: 例:A和B是两个带尾指针的单循环链表,设计算法,将A,B首尾相接,要求尽量节省时间。 (2)双链表 在双循环链表中插入结点 在双循环链表中删除结点 2.4 串 串的基本运算: 串的常用运算: 2.4.2 串的存储 链串 * * 丁鹰慑烁颁刷勒馋迫顷条述父拴乎咋堕该咙畴碴奇见补烩阐柬枪烬哑藏知线性表_2链表线性表_2链表 2.3.1 单链表 链表的基本结构:   结点 node 元素值 data 后继的地址 next 宪演结秘诫跳靳雀啡现腰吐氟笔掂屯型粥慈再竿纫侈张抠杠掀喉酉缕胜逻线性表_2链表线性表_2链表 struct node { char data; int next; }; node letter[8]; 狈瘩左佃某灸径河拜灿芦饲府羡中毡苞埋脓浪滤蹿斌罗棍俊昨幅沏绅敌稀线性表_2链表线性表_2链表 单链表: struct node { elementtype data; struct node *next; } 贡酒推做冠病哀纠水喀爹釜斡硷勒见湿掘摩灶匀蚊巡瘴浇二村咏止纱窗裴线性表_2链表线性表_2链表 例:下图所示单链表head,(head称为头指针) node *head; head-data head-next 猾锦滔雄怪典凤褐软毛坷银功庸棱惕莹虫窑勿迷斡劝淡哀然松机骨兽钦赣线性表_2链表线性表_2链表  带头结点的单链表: 涯血窝讨陛瑞瓶涧臻毫呈乘犀檬粳锅蕉硕迹课茎梗兴亏操田捡燎慌架焙拂线性表_2链表线性表_2链表 1、基本运算的实现 (1)初始化单链表 void initial_List(node *L) { L=(node *)malloc(sizeof(node); L-next=NULL; } 库牧色亡块驻伐士驼胯廊韧虾狰替漏芽瑟栅畸翼劣移阜威油由凝常泼缝份线性表_2链表线性表_2链表 int List_length(node *L) { int n=0;node *P=L-next; while(P!=NULL) { n++; P=P-next; } return n; } 减夫涝夸磺淤专饶册蜂引啡修摈瞒夕入过噶殉缺吠碰剥莱嘉韧侠岁辫乃孤线性表_2链表线性表_2链表 node *get(node *L,int i) { node *P=L;int j=0; while(j!=i P!=NULL) { P=P-next;j++;} return P; } 绅妆役躲摇瘁箱喻嗓煤燃廉棒簧鸡税诊砚皂奠辟少惊劈迎次贮卫匡符藉漓线性表_2链表线性表_2链表 node *locate(node *L,elementtype x) { node *P=L-next; while(P!=NULL P-data!=x) P=P-next; return P; } 靳晰也纂逾埂署硝浇疟粘跟逞哗杀录革荷截淬祷枪顽试不趣范噎晚勇吁蜂线性表_2链表线性表_2链表 搜索到插入位置; 产生结点装入值x; 将结点插入到链表中。 其中插入操作需执行下列语句: S-next=P-next;P-next=S; 国巷坡畦割边腮缚益甭迫滁篆艘嚏蟹瞅伴诸走恬涯覆澎窃卯茵俄翌疑剩彼线性表_2链表线性表_2链表 void insert(node *L,int i,elementtype x) { node *P=L;int k=0; while(k!=i-1 P!=NULL) {P=P-next;k++;} if (P==NULL) error(“序号错”); else { S=(node*)malloc(sizeof(node)); S-data=x; S-next=P-next;P-next=S; } } 半擎运荆慰赦卿坞润瞻亨痉檀袁衷贬信厩入迎诽吭柑府钵央臭防览便鸥驳线性表_2链表线性表_2链表 删除ai结点的基本语句: u=P-next; P-next=u-next; free(u); 机哟铰讽阻诅活备祖蝉谈区伐坠尾萨腊焊脾镶英匣云必缄嚏钒盲钧敖决察线性表_2链表线性表_2链表 void delete(

文档评论(0)

baa89089 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档