level 6
蓝色笑意cai
楼主
#include<stdio.h>
#include<malloc.h>
#include<iostream.h>
#include<string>
#define OK 1
#define ERROR 0
typedef struct LNode{
int data;
struct LNode *next;
}LNode,*LinkList;
//-----------初始化------
int InitList_L(LinkList &L)
{
L=(LNode*)malloc(sizeof(LNode));
L->next=(LNode*)NULL;
return OK;
}
//--------------表的合并---------------
void MergeList_L(LinkList &La,LinkList &Lb,LinkList &Lc){
LinkList pa,pb,pc;
pa=La->next;
pb=Lb->next;
pc=Lc=La; /
while(pa && pb){
if(pa->data <= pb->data){
pc->next=pa;
pc=pa;
pa=pa->next;
}
else{
pc->next=pb;
pc=pb;
pb=pb->next;
}
}
pc->next=pa?pa:pb;
delete Lb;
}
void output(LinkList L) //依次输出单链表里的每个元素
{
int i = 0;
LNode *p;
p = L->next;
while (p) {
if (i){
cout << " ";
}
cout << p->data;
p = p->next;
i = 1;
}
}
void input(LinkList L)
{
int i;
LinkList p;
while(1){
p = (LNode*)malloc(sizeof(LNode));
cin>>p->data;
i=cin.get();
p->next = (LNode*)NULL;
if(i=='\n')
break;
}
}
void main(){
LinkList L1,L2,L3;
InitList_L (L1);
input(L1);
InitList_L (L2);
input(L2);
InitList_L (L3);
MergeList_L(L1,L2,L3);
output(L3);
cout<<endl;
}
2016年05月18日 09点05分
1
#include<malloc.h>
#include<iostream.h>
#include<string>
#define OK 1
#define ERROR 0
typedef struct LNode{
int data;
struct LNode *next;
}LNode,*LinkList;
//-----------初始化------
int InitList_L(LinkList &L)
{
L=(LNode*)malloc(sizeof(LNode));
L->next=(LNode*)NULL;
return OK;
}
//--------------表的合并---------------
void MergeList_L(LinkList &La,LinkList &Lb,LinkList &Lc){
LinkList pa,pb,pc;
pa=La->next;
pb=Lb->next;
pc=Lc=La; /
while(pa && pb){
if(pa->data <= pb->data){
pc->next=pa;
pc=pa;
pa=pa->next;
}
else{
pc->next=pb;
pc=pb;
pb=pb->next;
}
}
pc->next=pa?pa:pb;
delete Lb;
}
void output(LinkList L) //依次输出单链表里的每个元素
{
int i = 0;
LNode *p;
p = L->next;
while (p) {
if (i){
cout << " ";
}
cout << p->data;
p = p->next;
i = 1;
}
}
void input(LinkList L)
{
int i;
LinkList p;
while(1){
p = (LNode*)malloc(sizeof(LNode));
cin>>p->data;
i=cin.get();
p->next = (LNode*)NULL;
if(i=='\n')
break;
}
}
void main(){
LinkList L1,L2,L3;
InitList_L (L1);
input(L1);
InitList_L (L2);
input(L2);
InitList_L (L3);
MergeList_L(L1,L2,L3);
output(L3);
cout<<endl;
}