软件技术-链表.doc

软件技术-链表.doc

ID:52228192

大小:76.00 KB

页数:4页

时间:2020-03-25

软件技术-链表.doc_第1页
软件技术-链表.doc_第2页
软件技术-链表.doc_第3页
软件技术-链表.doc_第4页
资源描述:

《软件技术-链表.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、一、链表的基木操作(有错请指出)1、尾插法建立链表nodecrtl_link()node*head,*p,*s;intx;head=(node*)malloc(sizeof(node));p=head;scanf("%d”,&x);while(x>0){s=(node*)malloc(sizeof(node));s->data=x;p->next=s;p=s;scanf(“%d",&x);}p->next=NULL;p=head;head=head->next;free(p);//删除头结点retu

2、rn(head);头插法建立链表node*crt2_list()charch;node*head,*s;head=NULL;ch=getchar();while(ch!=,,){s=(node*)malloc(sizeof(node));s->data=ch;s->next=head;head=s;ch=getchar();}return(head);}3、按序号查找1在链表中查找第i个结点,找到返I叫该结点地址,没有找到返I川NULL。node*findljink_list(node*head

3、,inti){node*p;intj=l;p=head->next;while(p!=NULL&&jvi){p=p->next;j++;}if(j==i)return(p);elsereturn(NULL);4、按序号查找2在链表中查找第i个结点,找到返I叫该结点地址,没有找到返I川NULL。node*find2_link_list(node*head,inti){node*p;intj;p=head;while(p->next!=NULL&&jnext;j++;}return(p

4、);}5、按值查找1在链表屮查找值为x的结点,找到返冋该结点地址,没有找到返冋NULL。node*find1_link_list(node*head,intx){node*p;p=head->next;vvhile(p->data!=x&&p!=NULL)p=p->next;if(p==NULL)p「intf(“Nofind!”);elseprintf("find.!'');return(p);}6、按值杏找2在链表屮查找值为x的结点,找到返冋该结点前驱结点的地址,没有找到返冋NULL。node*f

5、ind2_link_list(node*head,intx){node*p,*q;p=head->next;vvhile(p!=NULL&&p->data!=x){q=p;p=p->next;}return(q);}7、按值查找3在链表屮查找值为x的结点,找到返冋该结点前驱结点的地址,没有找到返冋NULL。node*find3_link_list(node*head,intx){node*q;p=head;while(p->next!=NULL&&p->next->data!=x){p=p->nex

6、t;)return(q);}8、插入1将值为b的新元素插入到链表结点x之后。voidinsl_link」ist(node*head,intb,intx){node*s;s=(node*)malloc(sizeof(node));s->data=b;if(head->next==NULL){head->next二s;sonext=NULL;return;}p=findl_link_list(head,x);if(p!=NULL){s->next=p->next;p->next=s;return;)将新

7、元索b插入到链表结点xZ前。voidins2_link_list(node*head,intx,intb){node*p,*s;s=(node*)malloc(sizeof(node));s->data=b;if(head->next==NULL){head->next=s;s->next=NULL;「etum;}p=find2_link_list(head,x);if(p->next!=NULL&&p!=NULL){s->next=p->next;p->next=s;return;})9、删除(按

8、值删除)删除链表屮值为x个结点。voiddel」ink_list(node*head,intx){node*p,*r;if(head->next==NULL){printf("Empty!‘‘);return;}p=find2_link_list(head,x);if(p->next!=NULL){r=p->next;p・>free(r);}return;)10、线性表的应用(约瑟夫环的求解)题目:有n只猴了选大王。选举的方法是所有猴子按1,2,3,……,n编号,围作

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

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

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