软基上机报告-链表(拓展题)

软基上机报告-链表(拓展题)

ID:21644994

大小:54.50 KB

页数:18页

时间:2018-10-23

软基上机报告-链表(拓展题)_第1页
软基上机报告-链表(拓展题)_第2页
软基上机报告-链表(拓展题)_第3页
软基上机报告-链表(拓展题)_第4页
软基上机报告-链表(拓展题)_第5页
资源描述:

《软基上机报告-链表(拓展题)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、一、程序流程说明二、1)创建一个单链表,其数据元素为整数,从键盘输入,输入0结束(注意0不放到链表内);三、2)从键盘任意输入一个整数,在单链表中查询该数,如果单链表中已经存在这个数,就调用删除函数,删除该元素所在结点,并将单链表在删除前后的数据元素依次输出到屏幕上;四、如果单链表中不存在这个数,就调用插入函数,将这个数插入到单链表尾,并将单链表在插入前后的数据元素依次输出到屏幕上。五、3)教材第一章习题第9题(用链表实现)ex2_3——扩展题六、1)删除单链表中全部的负数七、2)创建一个双向链表,按照冒泡排序的思路对这个双向链表进行排序,打印排序结果。注意,本算法在交换元素时是将链点整

2、个交换而不是将链点中的元素值交换。八、九、十、十一、2_21)创建一个单链表,其数据元素为整数,从键盘输入,输入0结束(注意0不放到链表内);(ifx!=0,scanf)2)从键盘任意输入一个整数,在单链表中查询该数,如果单链表中已经存在这个数,就调用删除函数,删除该元素所在结点,并将单链表在删除前后的数据元素依次输出到屏幕上;(search返回重复的位置,然后删除(同实验一))如果单链表中不存在这个数,就调用插入函数,将这个数插入到单链表尾,并将单链表在插入前后的数据元素依次输出到屏幕上。(同实验一,直接加在链表末尾)3)判断插入元素与表内元素的大小,如temp->data

3、p->link->data,则插入temp后2_31)删除单链表中全部的负数(逐个判断是不是负数,并且返回负数所在位置,删除过春哥同实验一)2)创建一个双向链表,按照冒泡排序的思路对这个双向链表进行排序,打印排序结果。注意,本算法在交换元素时是将链点整个交换而不是将链点中的元素值交换。(从一开始逐个比较,将比第一位大的与第一位交换位置,一直比较到最后一位然后开始对于第二位重复比较)二、程序代码2_2#include#include#includetypedefstructNode{intdata;structNode*link;}

4、node;typedefstructList{node*head;node*tail;intlength;}list;voidcreat_list(list*table){intx,i;node*temp;table->head=NULL;table->tail=NULL;table->length=0;x=1;scanf("%d",&x);for(i=0;x!=0;i++){fflush(stdin);printf("");temp=(node*)malloc(sizeof(node));temp->data=x;temp->link=NULL;temp->link=table->

5、head;table->head=temp;table->length++;scanf("%d",&x);}}node*create_node(intnew_node){node*temp;temp=(node*)malloc(sizeof(node));temp->data=new_node;temp->link=NULL;returntemp;}voidget(list*table,intn){inti,loc=table->length+1;node*temp;node*newnode;temp=table->head;table->length++;newnode=create_

6、node(n);for(i=2;ilink;}newnode->link=temp->link;temp->link=newnode;}voidshow_list(list*table){intx,i;node*temp;printf("链表为:");temp=table->head;for(i=1;i<=table->length;i++){x=temp->data;printf("%d",x);temp=temp->link;}}voiddelete_node(list*table,intn){inti;node*temp,*t;temp

7、=table->head;if(n==1){temp=temp->link;table->head=temp;}if(n>2&&nlength){temp=table->head;for(i=2;ilink;t=temp->link;temp->link=t->link;}if(n==table->length){for(i=2;ilink;te

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。