1.cpp

来自「题目:A、B两个以单链表做存储结构的递增有序排列的链表合并为一个单链表做存储结构」· C++ 代码 · 共 36 行

CPP
36
字号
#include "LinkList.h"
void main()
{
	LinkList A,B,C;
	LNode *q,*pa,*pb,*pre,*pc;
	ElemType m,n;
	cout<<"请输入链表A的长度:"<<endl;
	cin>>m;
	CreatList_L(A,m);
	PrintList_L(A);
	cout<<"请输入链表B的长度:"<<endl;
	cin>>n;
	CreatList_L(B,n);
	PrintList_L(B); 
	
//将A和B合并成非递增链表


	pa=A->next;pb=B->next;pre=NULL; //pa和pb分别指向A,B的当前元素
  while(pa||pb)
  {
    if(!pb||pa&&pa->data<pb->data)
    {
	   pc=pa;q=pa->next;pa->next=pre;pa=q; //将A的元素插入新表
    }//if
    else
    {
		pc=pb;q=pb->next;pb->next=pre;pb=q;//将B的元素插入新表
    }//else
		
    pre=pc;
  }//while
  C=A;A->next=pc; //构造新表头

	PrintList_L(C);
}//main

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?