欢迎来到天天文库
浏览记录
ID:38211074
大小:38.00 KB
页数:3页
时间:2019-06-07
《有序表的合并》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实验有序表合并1、问题描述:个递增有序的单链表,请你把它两个合并成一个有序的单链表2、数据结构设计structnode{intvalue;node*next;};3、算法设计(1)给单链表添加节点voidinsertNode(node*head,intvalue){node*p=head->next;if(p==NULL){ p=newnode; p->value=value; p->next=NULL; head->next=p; return;}while(p->next!=NULL){ p=p->next;}node*tmp=newnode;tm
2、p->value=value;tmp->next=NULL;p->next=tmp;}(2)遍历输出链表节点voidprint(node*head){node*p=head->next;while(p!=NULL){ cout<value<<""; p=p->next;}cout<next=NULL;node*p=headA->next;node*q=headB->next;if(p==NULL)
3、{ returnheadB;}if(q==NULL){ returnheadA;}while((p!=NULL)&&(q!=NULL)){ if(p->value==q->value) { insertNode(head,p->value); insertNode(head,q->value); p=p->next; q=q->next; } elseif(p->valuevalue) { insertNode(head,p->value); p=p->next; } elseif(p->value>q->valu
4、e) { insertNode(head,q->value); q=q->next; }}while(p!=NULL){ insertNode(head,p->value); p=p->next;}while(q!=NULL){ insertNode(head,q->value); q=q->next;}returnhead;}四、运行与测试
此文档下载收益归作者所有