【无标题】求助 数据结构顺序表问题

 

//已知两个顺序表分别为:12,45,33,21,76,19与36,20,43,27。

//要求:将两个顺序表合并成一个顺序表,并且新的顺序表中的元素为由小到大递增。

#include <iostream>

#define MAXSIZE 20

#define ERROR 0

#define OK 1

using namespace std;

typedef int ElemType;

typedef struct{

ElemType *elem;

int length;

}SqList;

//顺序表初始化

int Init(SqList &L){

L.elem=new ElemType[MAXSIZE];

if(!L.elem){

return ERROR;

}

L.length=0;

return OK;

}

//构造函数为顺序表赋值

void input(SqList &L){

ElemType e;

cout<<"请输入一些值,到0结束"<<endl;

cin>>e;

while(e!=0){

L.elem[L.length]=e;

L.length++;

cin>>e;

}

}

 

int main(){

SqList L1,L2,L;

int i,t,j;

int k;

if(Init(L1)&&Init(L2)){

input(L1);

input(L2);

cout<<"两个顺序表都已存储完成"<<endl;

}

//将两个顺序表合成一个

for(i=0;i<L1.length;i++){

L.elem[i]=L1.elem[i];

}

k=L1.length;

for(i=0;i<L2.length;i++){

L.elem[k]=L2.elem[i];

k++;

}

L.length=k;

//冒泡排序

for(i=0;i<L.length;i++){

for(j=0;j<(L.length-i);j++){

if(L.elem[j]>L.elem[j+1]){

t=L.elem[j];

L.elem[j]=L.elem[j+1];

L.elem[j+1]=t;

}

}

}

//输出

for(i=0;i<L.length;i++){

cout<<L.elem[i]<<endl;

}

return 0;

}

我的思路是用一个新的顺序表来承装原来两个顺序表中的元素,然后对新的数据表进行冒泡排序,但是运行出来的结果不对,我watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5pyd6aOO5o2V6Zyy,size_20,color_FFFFFF,t_70,g_se,x_16是哪儿错了呢?

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值