设计一算法实现将两个递增单链表合并为一个递增单链表,要求不另开辟空间,即将单链表La和Lb合并后为La单

完整算法

第1个回答  2011-01-03
这个应该是最基本的要学的吧。比较la和lb,谁大,就让lc的next指向谁(判断语句一个),if la.data>lb.data;lc.next=la;la=la.next; else lc.next=lb;lb=lb.next;
然后循环到结尾。大概算法是这样,你自己组织下格式。本回答被提问者采纳

设计一个算法,将两个递增链表La、Lb合并成一个递增链表Lc。
\/\/设计一个算法,将两个递增链表La、Lb合并成一个递增链表Lc;La,Lb,Lc均为带头结点的链表 include<stdio.h> typedef int datatype;struct PNode { datatype data; \/\/定义链表中结点的数据域,DATATYPE为数据类型 struct PNode *next; \/\/定义链表中结点的指针域 };typedef struct PNode l...

用C语言编写算法实现将两个递增顺序表合并为一个递增顺序表
1.最容易的办法就是把两个表保存在一个新的表里,然后冒泡排序(就是这么暴力。)2.不过这个问题用指针实现最方便了。两个指针分别指着两个递增表:比较指针所指的值大小,将小的那个保存在新的表里,然后将小的那个指针往前走一步。再比较,再保存,再走...直到其中一个表走完,把另一个表剩...

...一个算法,将两个循环单链表合并为一个循环单链表
编写好的算法实现将这两个链表合并为新的带有头结点的链表 lc ,使得 lc 的元素仍然是非递增有序排列的序列,如果遇到 la 与 lb 中元素相同,则只取 la 中的元素,去掉 lb 中的元素。已知 la 的元素个数 为 m , lb 的元素个数为 n。循环单链表是单链表的另一种形式,其结构特点链表中最后...

用C++写:将两个递增的有序链表合并为一个递增的有序链表。要求结果链表...
cout<<"请输入链式线性表元素的个数: ";cin>>size;q=H=new LNode;cout<<"请按从小到大输入线性表的"<<size<<"个元素: ";for(int i=0;i<size;i++){ p=new LNode;cin>>m;p->num=m;H->next=p;H=p;H-> next= NULL;H=q;cout<<"刚创建的线性表为: ";for(p=H-> next...

如何将两个递增单链表合并为一个递减单链表,并保留原有节点。求大神给...
\/*采用方法:随机创建两个整型数组,再把它们分别按升序排列,然后用数组元素创建两个链表(升序)list1和list2。然后按要求进行合并。最后输出合并结果,销毁链表*\/ include<stdio.h> include<stdlib.h> include typedef int ElemType;typedef struct LNode { ElemType data;struct LNode *next;}NODE...

...均以单链表形式存储。请编写算法将这两个单链表归并为一个按元...
重新输入按递增排序的单链表 :\\n";cin>>p1->num;} n++;} p2->next=NULL;return head;} void Print(Node *head) \/\/ 输出链表 { Node* p=head;while (p){ cout<num<<" "; p=p->next;} cout<<endl;} Node *ReverseList(Node *head) \/\/ 单链表的逆转 { Node *p,*q,*r;p=...

用C语言编一个程序:两个递增有序链表合并成一个递减链表,
printf("请输入 %d 个有序递增数据:\\n",n);for (int i=0;i<n;i++){ \/\/printf("第 %d 个: ",i+1);p=(list)malloc(sizeof(node));scanf("%d",&p->data);p->next=q->next;q->next=p;q=p;} } void output(list h){ list p;p=h->next;printf("输出数据\\n");while...

设有两个按元素值递增有序的顺序表A和B(单链表A和B),
设有两个按元素值递增有序的顺序表A和B(单链表A和B),编一程序讲A表和B表归并成一个新的递增有序的顺序表C(单链表C,值相同的元素均保留在C表中)。用VC++6.0设计一下程序... 设有两个按元素值递增有序的顺序表A和B(单链表A和B),编一程序讲A表和B表归并成一个新的递增有序的顺序表C(单链表C,值...

设A和B是两个单链表其表中元素递增有序试写一算法将A和B归并成一个按...
h->next = NULL;r = h;while (p != NULL && q != NULL){ if (p->data <= q->data){ r->next = p;r = p;p = p->next;} else { r->next = q;r = q;q = q->next;} } if (p == NULL)r->next = q;if (q == NULL)r->next = p;p = h->next;h =...

...程序,将A表和B表归并成一个新的递增有序的单链表C,值
import java.util.Collections;import java.util.LinkedList;import java.util.List;public class TestMouse1 {public static void main(String[] agse) {List<Integer> list1 = new LinkedList<Integer>();Collections.addAll(list1, 30, 41, 15, 12, 56, 80);List<Integer> list2 = new ...

相似回答