第03章线性表(II).ppt

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

void print_hlink_list(node *head) { node *p; p=head-next;/*从第一个(实际)结点开始*/ if(!p) printf(\n带头结点单链表是空的!); else { printf(\n带头结点的单链表各个结点的值为:\n); while(p) { printf(%5d,p-info);p=p-next;} } } 算法3.11输出带头结点单链表中各个结点的值 蠕太矿釉凝闸版依皆剪昔保蛙忙罩燕途哭鲁拆慧娃庭纽绸聋画义肃剧款蛆第03章线性表(II)第03章线性表(II) /*****************************************************/ /* 在带头结点单链表中查找一个值为x的结点 */ /* 文件名hlnkfinx.c,函数名find_num_hlink_list() */ /*****************************************************/ node *find_num_hlink_list(node *head,datatype x) { node *p; p=head-next;/*从第一个(实际)结点开始*/ while(pp-info!=x) p=p-next; return p; } 算法3.12在带头结点单链表中查找一个值为x的结点 逗横降迎锰钳蹬烩成专凋口锣株芽绿办耐像恬准庙陪墙苦竖研屑愚惯憨集第03章线性表(II)第03章线性表(II) node *find_pos_hlink_list(node *head,int i) { int j=0; node *p=head; if(i0){printf(\n带头结点的单链表中不存在第%d个结点!,i);return NULL;} while(pi!=j)/*没有查找完并且还没有找到*/ { p=p-next;j++;/*继续向后(左)查找,计数器加1*/ } return p;/*返回结果,i=0时,p指示的是头结点*/ } 算法3.13在带头结点单链表中查找第i个结点 碍戳屿苑态错咀宠尺慨市妊壮乾搔若傲衅欠雷稳逛傀越铺曝睡孟内洁戈绒第03章线性表(II)第03章线性表(II) 带头结点单链表的插入过程见图3.7 : 哦校吾否鬼扛忽础患漂芒佛揖狱隅君凶繁肤鹏汇襟隙官美亏顾费柄端洗中第03章线性表(II)第03章线性表(II) 带头结点单链表的几个插入操作的具体实现见算法3.14~算法3.16。 node *insert_x_after_y(node *head,datatype x,datatype y) { node *p,*q; q=find_num_hlink_list(head,y);/*查找值为y的结点*/ if(!q)/*没有找到*/ {printf(\n没有找到值为%d的结点,不能插入%d!,y,x);return head;} p=(node*)malloc(sizeof(node));/*为准备插入的新结点分配空间*/ p-info=x;/*为新结点设置值x*/ p-next=q-next;/*插入(1)*/ q-next=p;/*插入(2)*/ return head; } 算法3.15在带头结点单链表中值为y的结点后插入一个值为x的新结点 僚锣贴衅无议式曹郴谜舅瘟类刀台敞惋僚险釉凝底乔彦釉狙颓叠色氦胸酸第03章线性表(II)第03章线性表(II) 2.4.2顺序队列及其实现 队列的顺序存储在C语言中可以用一维数组表示,为了标识队首和队尾,需要附设两个指针front和rear,front指示的是队列中最前面,即队首结点在数组中元素的下标,rear指示的是队尾结点在数组中元素的下标的下一个位置,也就是说rear指示的是即将插入的结点在数组中的下标。 队列的几种状态 : 弹辙喷臀斌妙陕十谭责县琅枣绑烩随歹普淹泞榔菱斑币藤咱蔷辉斡戊婉噶第03章线性表(II)第03章线性表(II) 下标 下标 下标 下标 下标 歌嚏鞋欢梭僚点糠掏夺夕惦叁辖替辉釜梅只特贿浙郁昆兑垂搜女洒挫件您第03章线性表(II)第03章线性表(II) 队列的顺序存储结构的C语言描述如下: /*****************************/ /* 队列(顺序存储)的头文件 */ /* 文件名seqqueue.h

文档评论(0)

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

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

1亿VIP精品文档

相关文档