/*将两个顺序表合并为一个新的有序顺序表
并由函数返回结果顺序表*/
#include<iostream>
using namespace std;
#define Max = 10
struct SeqList{
int data[5]={1,2,3,5,7};
int length = 5;
}L1;
struct SeqList{
int data[5]={3,4,6,8,9};
int length = 5;
}L2;
struct SeqList{
int data[10];
int length = 0;
}L3;
bool Merge(SeqList A,SeqList B,SeqList &C){
int i=0,j=0,k=0;
while(i<A.length && j<B.length){
if(A.data[i]<=B.data[j]){
C.data[k++] = A.data[i++];
}
else{
C.data[k++] = B.data[j++];
}
}
while(i<A.length){
C.data[k++] = A.data[i++];
}
while(i<B.length){
C.data[k++] = B.data[i++];
}
C.length=k;
return true;
}
int main(){
Merge(L1,L2,L3);
for (int i = 0; i < L3.length; i++)
{
cout<<L3.data[i]<<" ";
}
cout<<endl<<"length:"<<L3.length<<endl;
return 0;
}
不存在用户定义的从 "SeqList" 到 "SeqList" 的适当转换
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- CSDN专家-link 2021-08-18 11:08关注
你为啥三个结构都用SeqList呢?不是自己找事么?
你让Merge函数如何分辨三个SeqList参数各自是哪个啊/*将两个顺序表合并为一个新的有序顺序表 并由函数返回结果顺序表*/ #include<iostream> using namespace std; #define Max = 10 struct SeqList{ int data[10]; int length = 0; }L1,L2,L3; bool Merge(SeqList A,SeqList B,SeqList &C){ int i=0,j=0,k=0; while(i<A.length && j<B.length){ if(A.data[i]<=B.data[j]){ C.data[k++] = A.data[i++]; } else{ C.data[k++] = B.data[j++]; } } while(i<A.length){ C.data[k++] = A.data[i++]; } while(i<B.length){ C.data[k++] = B.data[i++]; } C.length=k; return true; } int main(){ int data1[5]={1,2,3,5,7}; memcpy(L1.data,data1,5); L1.length = 5; int data2[5]={3,4,6,8,9}; memcpy(L2.data,data2,5); L2.length = 5; Merge(L1,L2,L3); for (int i = 0; i < L3.length; i++) { cout<<L3.data[i]<<" "; } cout<<endl<<"length:"<<L3.length<<endl; return 0; }
解决 无用评论 打赏 举报
悬赏问题
- ¥15 基于卷积神经网络的声纹识别
- ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
- ¥100 为什么这个恒流源电路不能恒流?
- ¥15 有偿求跨组件数据流路径图
- ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
- ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
- ¥15 CSAPPattacklab
- ¥15 一直显示正在等待HID—ISP
- ¥15 Python turtle 画图
- ¥15 stm32开发clion时遇到的编译问题