有一个存放整数的长度为m+n的线性表L,其前m个元素单调递增,后n个元素也单调递增。设计一个算法,使得整个线性表的元素单调递增。要求:使用顺序存储实现。
3条回答 默认 最新
- 技术专家团-小桥流水 2022-03-27 14:49关注
线性表直接排序就可以了。
代码如下:
#include <stdio.h> #define MAXNMB 100 typedef struct _node { int data[MAXNMB]; int len; }Linklist; //排序 void sort(Linklist *L) { int t,i,j; for (i=0;i<L->len-1;i++) { for (j=0;j<L->len-i-1;j++) { if(L->data[j] > L->data[j+1]) { t = L->data[j]; L->data[j] = L->data[j+1]; L->data[j+1] = t; } } } } int main() { Linklist L; int m,n,i; printf("请输入m和n:"); scanf("%d %d",&m,&n); printf("请输入%d个递增的数:",m); for(i=0;i<m;i++) scanf("%d",&L.data[i]); printf("请输入%d个递增的数:",n); for(i=0;i<n;i++) scanf("%d",&L.data[m+i]); L.len = m+n; //排序 sort(&L); //输出 for (i=0;i<L.len;i++) { if(i<L.len-1) printf("%d ",L.data[i]); else printf("%d\n",L.data[i]); } return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 C语言设计一个简单的自动换档程序
- ¥15 关于logstash转发日志时发生的部分内容丢失问题
- ¥17 pro*C预编译“闪回查询”报错SCN不能识别
- ¥15 微信会员卡接入微信支付商户号收款
- ¥15 如何获取烟草零售终端数据
- ¥15 数学建模招标中位数问题
- ¥15 phython路径名过长报错 不知道什么问题
- ¥15 深度学习中模型转换该怎么实现
- ¥15 Stata外部命令安装问题求帮助!
- ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。