把元素递增的线性表La和Lb合并为Lc,且Lc的中的元素递减排列,使用原空间
2007-12-17 12:22
543 查看
void Reverse_merge(pLinkList la,pLinkList lb,struct LinkList ** lc)
{
pLinkList current = NULL;
while ( la && lb )
{
if ( la->value < lb->value )
{
*lc = la;
la = la->next;
(*lc)->next = current;
current = *lc;
}
else
{
*lc = lb;
lb = lb->next;
(*lc)->next = current;
current = *lc;
}
}
while (la)
{
*lc = la;
la = la->next;
(*lc)->next = current;
current = *lc;
}
while (lb)
{
*lc = lb;
lb = lb->next;
(*lc)->next = current;
current = *lc;
}
}
类似于归并排序中的一种合并方法
{
pLinkList current = NULL;
while ( la && lb )
{
if ( la->value < lb->value )
{
*lc = la;
la = la->next;
(*lc)->next = current;
current = *lc;
}
else
{
*lc = lb;
lb = lb->next;
(*lc)->next = current;
current = *lc;
}
}
while (la)
{
*lc = la;
la = la->next;
(*lc)->next = current;
current = *lc;
}
while (lb)
{
*lc = lb;
lb = lb->next;
(*lc)->next = current;
current = *lc;
}
}
类似于归并排序中的一种合并方法
相关文章推荐
- 已知两个链表 la和 lb,其元素值递增排序。编程将la和lb合并成一个递减有序(相同值元素只保留一个)的链表lc。(北方名校经典试题) 本题选做
- 线性链表之将单调递增的la和lb中的数据元素按值递增,将la和lb合并为新的线性表lc,使lc中的元素仍然单调递增
- 已知头指针分别为la和lb的有序单链表,其数据元素都是按值非递减排列。现要归并la和lb得到单链表lc,使得lc中的元素按值非递减排列。
- 线性表LA和LB非递减有序排列,将LA,LB进行归并为新的线性表LC,要求LC中的数据元素扔非递减有序列排列
- 假设以两个元素依值递增有序排列的线性表A和B分别表示两个集合,现要求另辟空间构成一个顺序链表C
- 假设有两个按元素值递增有序排列的线性表A和B,均以单链表作存储结构,请编写算法将A表和B表归并为一个按元素值递减 有序(即非递增有序,允许表中含有值相同的元素)排列的线性表C,并要求利用原装(即A表和
- 数据结构链表习题2.27,假设以两个元素依值递增有序排列的线性表A和B分别表示两个集合,现要求另辟空间构成一个顺序链表
- 假设有两个按元素值递增有序排列的线性表A和B,均以单链表作存储结构,请编写算法将A表和B表归并为一个按元素值递减 有序(即非递增有序,允许表中含有值相同的元素)排列的线性表C,并要求利用原装(即A表和
- 要完整准确的 均以单链表作存储结构 试编写算法将A表和B表归并成一个按元素值递减有序的线性表C 【数据结构】假设有两个按元素值递增有序的线性表A和B 并要求利用原表的空间存放C。谁会么
- 假设有两个按元素值递增有序排列的线性表A和B,均以单链表作存储结构,请编写算法将A表和B表归并为一个按元素值递减 有序(即非递增有序,允许表中含有值相同的元素)排列的线性表C,并要求利用原装(即A表和
- 写程序。设ha和hb分别是两个带头结点的非递减有序单链表的头指针,试设计算法,将这两个有序链表合并成一个非递增有序的单链表。要求使用原链表空间,
- 数据结构中线性表的基本操作-合并两个线性表-按照元素升序排列
- 将la,lb链表合并成lc。
- 【C语言版数据结构】线性表的链式表示,并且实现合并两个非递减有序排列到新的线性表
- 将所有在线性表Lb中但不在La中的数据元素插入到La中
- 求出递增链表La、Lb的差集Lc,并同样以递增的方式存储
- 设A和B是两个单链表,其表中元素递增有序,使用一算法将A和B归并成一个案元素递减有序的单链表C(该程序中的功能包含了上几个博客中的部分功能)
- 假设利用两个线性表La和Lb分别表示两个集合A和B(即线性表中的数据元素即为集合中的成员),现要求一个新的 集合A=AUB。这就要求对线性表作如下操作:扩大线性表La,将存在于线性表Lb中而不存在于线
- 将两个按元素值递增排序的单链表合并成一个按元素值递减的单链表
- 随机产生两组整数,每组整数中元素互不相同,这两组数按值递增有序。设计程序,将这两组数合并成按值递减有序的一组数,要求合并的新的一组数中,相同的元素只有一个。