求解什么叫把两个单链表归并排序算法为一个链表的意思是什么

数据结构:将两个有序的单链表合并成一个有序的单链表,要求用原表的结点空间。_百度知道
数据结构:将两个有序的单链表合并成一个有序的单链表,要求用原表的结点空间。
将两个有序的单链表合并成一个有序的单链表,要求用原表的结点空间。4月20日晚八点前!先行谢过!
我有更好的答案
#include &stdlib.h&#include &time.h&struct link{
struct link *};//不带头节点的链表struct link *CreateLink(int n){
struct link *head=NULL,*p=NULL,*q=NULL;
srand( n*1000);
int temp = rand()%10;
head = (struct link *)malloc(sizeof(struct link));
head-&data =
head-&next = NULL;
for (int i=1; i&n; i++)
q = (struct link *)malloc(sizeof(struct link));
temp = temp+rand()%100;
q-&data =//ascend
q-&next = NULL;
}}void PrintLink(struct link *head){
struct link *p=
printf(&\nData in the Link:&);
while (p!=NULL)
printf(&%d &,p-&data);
}}struct link *MergeLink(struct link *h1, struct link *h2){
struct link *
struct link *head1=h1,*head2=h2;
//哪个链表第一个节点值小,则把它的头指针作为合并后的头指针
if (h1-&data&h2-&data)
head1 = h2;
head2 = h1;
head = head1;
struct link *tmp=NULL;
while (head2 != NULL)
while ( (head1-&next-&data & head2-&data) && head1-&next!=NULL)
head1 = head1-&
tmp = head2;
head2 = head2-&
tmp-&next = head1-&
head1-&next =
}}int main(){
struct link *head1=NULL,*head2=NULL;
head1 = CreateLink(10);
PrintLink(head1);
head2 = CreateLink(13);
PrintLink(head2);
struct link *head=NULL;
head = MergeLink(head1,head2);
PrintLink(head);
return 1;}
采纳率:82%
不管你是用什么算法给链表排序的,,都可以用插入排序的方式将第二个链表插入到第一个链表啊,
#include &stdio.h&#include &stdlib.h&#define null 0typedef struct LNode{ struct LNode *}LNode , *LinkLvoid CreateList_L(LinkList L,int n){ LinkL for(i=n;i&0;--i) {
p=(LinkList)malloc(sizeof(LNode));
printf(& input numbers: \n&);
scanf(&%d&,&p-&data);
p-&next=L-&
L-&next=p; }}main(){ int n1,n2; LinkList La,Lb,Lc,pa,pb, printf(&input the n1:&); scanf(&%d&,&n1); printf(&input the n2:&); scanf(&%d&,&n2); La=(LinkList)malloc(sizeof(LNode)); La-&next= CreateList_L(La,n1); Lb=(LinkList)malloc(sizeof(LNode)); Lb-&next= CreateList_L(Lb,n2); Lc=(LinkList)malloc(sizeof(LNode)); Lc-&next= pa=La-& pb=Lb-& Lc=pc=La;
while(pa&&pb)
if(pa-&data&=pb-&data)
pc-&next=pa?pa:
printf(&%d&,pc-&data);
为您推荐:
其他类似问题
单链表的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。用java语言实现两个链表的合并,编一程序将A表和B表归并成一个新的递增有序的单链表C(值相同的元_百度知道
用java语言实现两个链表的合并,编一程序将A表和B表归并成一个新的递增有序的单链表C(值相同的元
用java语言实现两个链表的合并,编一程序将A表和B表归并成一个新的递增有序的单链表C(值相同的元素均保留在C表中),并要求利用原表的空间存放C
测试数据:
(1) A表(30,41,15,12,56,80)
B表(23,56,78,23,12,33,79,90,55)
(2) A表...
我有更好的答案
数组a存储'A' 'B' 'C' 'D' 'E' 'F'数组b存储'A' 'B' 'C' 'D' 'E' 'F' \0数组a是字符数组数组b是一个字符串一般字符串以说以\0结尾的所以数组a不算是字符串长度上也不相同因为数组b多了个\0
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。将两个单链表归并成一个按元素值递减有序的单链表_百度文库
赠送免券下载特权
10W篇文档免费专享
部分付费文档8折起
每天抽奖多种福利
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
将两个单链表归并成一个按元素值递减有序的单链表
&&将两个单链表归并成一个按元素值递减有序的单链表
阅读已结束,下载本文需要
想免费下载更多文档?
定制HR最喜欢的简历
你可能喜欢没有更多推荐了,
不良信息举报
举报内容:
将两个升序排列的单链表合并为一个降序排列的单链表且不增加新的结点
举报原因:
原文地址:
原因补充:
最多只允许输入30个字
加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!14:09 提问
C语言将两个递增有序单链表归并为一个降序的单链表,求大侠帮忙看看
struct list
struct list
SLIST *creat(char
SLIST *h,*p,*q;
h=p=(SLIST *)malloc(sizeof(SLIST));
for(i=0; i
q=(SLIST *)malloc(sizeof(SLIST));
q-&c=a[i];
p-&next=q;
p-&next=0;
void output(SLIST
if (p==NULL)
printf("\nThe list is NULL!\n");
printf("\nHead");
while(p-&c!=0)
{ printf("-&%c",p-&c);
printf("-&End\n");
SLIST *sub(SLIST *a,SLIST *b)
SLIST *pa,*pb,*r;
r=NULL; //r为新链表头
while(pa-&c!=0&&pb-&c!=0)
if(pa-&c& pb-&c)
pa-&next=r;
pb-&next=r;
while(pa!=NULL)//如果是表1未完,它的剩余结点倒序插入。
pa-&next=r;
while(pb!=NULL)
pb-&next=r;
return(r);
void main()
head1,*head2,*head3;
char a[N]="abcdefg";
char b[N]="ABCDEFG";
head1=creat(a);
printf("\nThe first list before merging:\n");
output(head1);
head2=creat(b);
printf("\nThe second list before merging:\n");
output(head2);
head3=sub(head1,head2);
printf("\nThe list after merging:\n");
output(head3);
1.程序运行结果为:
The first list before merging:
Head-&a-&b-&c-&d-&e-&f-&g-&End
The second list before merging:
Head-&A-&B-&C-&D-&E-&F-&G-&End
The list after merging:
Head-&g-&f-&e-&d-&c-&b-&a-&G-&F-&E-&D-&C-&B-&A-&?&蚉ress any key to continue
====C语言将两个递增有序单链表归并为一个降序的单链表,求大侠帮忙看看 程序运行时最后报错,为什么呢?
按赞数排序
你说最后报错,但是你又不把错误信息贴出来??我一行一行看,怎么知道哪里的问题啊
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐

我要回帖

更多关于 单链表的归并 的文章

 

随机推荐