概述
#include <iostream>
using namespace std;
typedef struct node
{
int data;
struct node *next;
} node, *list;
void chuangjian(list &l)
{ //创建链表
l = new node;
l->next = NULL;
}
void shuru(list &l, int n)
{ //链表数据的输入
int i;
node *p, *r;
cout << "请输入" << n << "个数";
r = l;
for (int i = 0; i < n; i++)
{
p = new node;
cin >> p->data;
p->next = NULL;
r->next = p;
r = p;
}
}
void charu(list &l, int e)
{
node *p;
p = new node;
p->data = e;
p->next = l->next;
l->next = p;
}
bool panduan(list &l, int e)
{ //判断有没有e这个元素
node *p;
p = l->next;
while (p != NULL)
{
if (p->data == e)
{
return true;
}
p = p->next;
}
return false;
}
void hebing(list &la, list lb)
{ //不同的才合并
int e;
node *p;
p = lb->next;
while (p != NULL)
{
e = p->data;
if (!panduan(la, e))
{
charu(la, e);
}
p = p->next;
}
}
void shuchu(list l)
{
node *p;
p = l->next;
while (p != NULL)
{
cout << p->data << " ";
p = p->next;
}
cout << endl;
}
int main ()
{
list la, lb;
int n, m;
chuangjian(la);
chuangjian(lb);
cout << "请输入线性表la的元素的个数" << endl;
cin >> n;
shuru(la, n);
cout << "请输入线性表lb的元素的个数" << endl;
cin >> m;
shuru(lb, m);
cout << "la与lb合并之后" << endl;
hebing(la, lb);
shuchu(la);
return 0;
}
最后
以上就是愉快云朵为你收集整理的数据结构-链表的合并的全部内容,希望文章能够帮你解决数据结构-链表的合并所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复