人間重逢 2022-03-24 17:30 采纳率: 100%
浏览 401
已结题

使用C语言,c语言两个线性表LA,LB,线性表La和线性表Lb合并,将LA中没有的元素插入到LA的前端

#include<stdlib.h>
#include<stdio.h>
#define MAXSIZE 100
#define ERROR 0
#define OVERFLOW 0
typedef int Status;
typedef struct { //定义顺序表
int *elem;
int length;
} List;

Status InitList(List &L) //创建空顺序表
{
L.elem = (int*)malloc(MAXSIZE*sizeof(int));
if(!L.elem)exit(OVERFLOW);
L.length = 0;
return 0;
}

void ListInput(List &L) //顺序表数据的输入
{
int i=0;
while (1){
scanf("%d",&L.elem[i]);
if(L.elem[i]==-1)break;
i++;
}
L.length=i;
}

int ListLength(List L) //求顺序表的长度
{
return L.length;
}

void GetElem(List L, int i, int &e) //求顺序表的第i个元素,并以e返回
{
e = L.elem[i - 1];
}

bool LocateElem(List L, int e) //判断List里有没有e这个元素
{
int i;
for (i = 0; i < L.length; i++)
if (e == L.elem[i])
return true;
return false;
}

void ListInsert(List &L, int e) //将e插入到List的最后
{
L.elem[L.length] = e;
L.length++;
}

void ListOutput(List L) //输出List
{
int i;
for (i = 0; i < L.length; i++)
printf("%d ",L.elem[i]);
printf("\n");
}

void unionList(List &LA, List LB) //线性表的合并(顺序表)
{
//将所有在线性表LB中但不在LA中的数据元素插入到LA中
int LA_len, LB_len, i, e;
LA_len = ListLength(LA);
LB_len = ListLength(LB); //求线性表的长度
for (i = 1; i <= LB_len; i++) {
GetElem(LB, i, e); //取LB中第i个数据元素赋给e
if (!LocateElem(LA, e)) //LA中不存在和e相同的数据元素,则插入之
ListInsert(LA, e);
}
} //unionList

int main() {
List LA, LB;
InitList(LA);//创建线性表LA
InitList(LB);//创建线性表LB
printf("请输入LA,以-1结束:") ;
ListInput(LA);//
printf("请输入LB,以-1结束:") ;
ListInput(LB);
unionList(LA, LB);
printf("LA和LB合并后的集合为:") ;
ListOutput(LA);
return 0;
}

根据上方代码修改,将LA中没有的元素插入到LA的前端(原代码是插入到LA的后端)
谢谢!

  • 写回答

2条回答 默认 最新

      报告相同问题?

      相关推荐 更多相似问题

      问题事件

      • 系统已结题 4月5日
      • 已采纳回答 3月28日
      • 修改了问题 3月24日
      • 创建了问题 3月24日

      悬赏问题

      • ¥15 在matlab中如何进行三个参数的离散傅里叶逆变换(idft)
      • ¥15 遇到问题了,求解答!
      • ¥15 请问coppliasim eduUR5视觉抓取怎么实现仿真,
      • ¥30 JavaWeb实验(购物平台)
      • ¥15 八路抢答器倒计时设计时显示器不输出,只能显示0
      • ¥15 用C语言随机生成一个迷宫
      • ¥15 超多因素的正交方案设计
      • ¥15 Scratch~汽车小游戏
      • ¥30 OSGB转换为3dtiles
      • ¥25 用于Audio的芯片中“Audio Interface”和“Mode Control”是什么?