7-1 两个有序链表序列的合并(20 分)#include<iostream>
#include<malloc.h>
#define OK 1
#define ERROR 0
#define OVERFLOW -1
using namespace std;
typedef int Status;
typedef int ElemType;
typedef struct LNode
{
ElemType data;
struct LNode* next;
} LNode, *LinkList;
Status InitList(LinkList& L)
{
L = new LNode;
if(!L)
exit(OVERFLOW);
L->next = NULL;
return OK;
}
Status InsertList(LinkList& L)
{
LNode* p = L;
int num;
while(1)
{
cin >> num;
if(num == -1)
{
break;
}
else
{
LNode* r;
r = new LNode;
r->data = num;
r->next = p->next;
p->next = r;
p = r;
}
}
return OK;
}
void PrintList(LinkList& L)
{
LNode* p = L->next;
if(!p)
cout << "NULL";
/*else
{
cout << p->data
#include<iostream>
#include<malloc.h>
#define OK 1
#define ERROR 0
#define OVERFLOW -1
using namespace std;
typedef int Status;
typedef int ElemType;
typedef struct LNode
{
ElemType data;
struct LNode* next;
} LNode, *LinkList;
Status InitList(LinkList& L)
{
L = new LNode;
if(!L)
exit(OVERFLOW);
L->next = NULL;
return OK;
}
Status InsertList(LinkList& L)
{
LNode* p = L;
int num;
while(1)
{
cin >> num;
if(num == -1)
{
break;
}
else
{
LNode* r;
r = new LNode;
r->data = num;
r->next = p->next;
p->next = r;
p = r;
}
}
return OK;
}
void PrintList(LinkList& L)
{
LNode* p = L->next;
if(!p)
cout << "NULL";
/*else
{
cout << p->data
该博客介绍了如何合并两个已排序的链表,实现一个合并后的非降序链表。通过定义结构体LNode表示链表节点,实现了InitList、InsertList、PrintList和getMerge等函数,getMerge函数用于合并两个链表。最后在main函数中演示了合并过程并打印结果。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



