编程论坛
注册
登录
编程论坛
→
数据结构与算法
两顺序表合并并排序
zhouyanbin
发布于 2010-09-14 15:30, 1205 次点击
题目: 有顺序表A和B,其元素均按从小到大的升序排列,编写一个算法将它们合并成一个顺序表C,要求C的元素也是从小到大的升序排列。
我是新手,刚开始学,希望大家帮帮忙!!!谢过
5 回复
#2
2010-09-14 20:05
有事找斑竹
#3
寒风中的细雨
2010-09-14 21:56
个人思路:
首先把结构体定义好
再是,初始化顺序表,这里可以同时添加元素也可只是分配内存单元和初值设定,随自己。
输入的是已经排好序的就不用定义排序的函数
最后就是 合并成第三个顺序表,把握好要合并的两个表的各自的长度,来确定合并后表的长度和比较的结束标志。
要看效果就加个打印结果的。
#4
2010-09-16 19:25
版主就是好,干脆给他写出来好了,让我们其他人也学习学习
#5
明紫亮
2013-09-25 08:43
?include<stdio.h>
?include<conio.h>
nt main(void)
? int a[5]={1,3,5,7,9},b[5]={2,4,6,8,10},c[10],i,j,k,n;
?
? i=0; j=0; k=0;
? while(i<=4 && j<=4)
? {
? if(a[i]<=b[j])
? {
? c[k]=a[i];
? k++;
? i++;
? }
? else
? {
? c[k]=b[j];
? k++;
? j++;
? }
? }
? while(i<=4)
? {
? c[k]=a[i];
? k++;
? i++;
? }
? while(j<=4)
? {
? c[k]=b[j];
? k++;
? j++;
? }
? for(n=0;n<=9;n++)
? printf("%3d",c[n]); printf("\n");
? getch();
? return 0;
}
1