将2个按升序排列的数列,仍按升序合并存放到另一个数组中,要求,每个数都一次到为,不得在新数组中重新排序

来源:百度知道 编辑:UC知道 时间:2024/06/15 20:06:50

merge sort的一个子程序(假设两个数列是由小到大的)
void merge(int arr1[], int arr2[], int arr3[], int len1, int len2){
//arr1,arr2表示两个数组。arr3是新数组,且长度足够
//len1:arr1的长度 len2同理
int i=0,j=0,pos=0;
for(;i<=len1-1 && j<=len2-1;++pos){
if(arr1[i]<arr2[j])
arr3[pos]=arr1[i++];
else
arr3[pos]=arr2[j++];
}
}
for(;i<=len1-1;++i)
arr3[++pos]=arr1[i];
for(;j<=len2-1;++j)
arr3[++pos]=arr1[j];
}

#include <stdio.h>
#include <stdlib.h>

void func(int arr_dst[], int arr_1[], int len_1, int arr_2[], int len_2) {
int i, j, k;

for (i=j=k=0; i<len_1; ++i) {
while (j<len_2 && arr_1[i]>arr_2[j]) {
arr_dst[k++] = arr_2[j];
++j;
}

arr_dst[k++] = arr_1[i];
}

while (j &l

将2个按升序排列的数列,仍按升序合并存放到另一个数组中,要求,每个数都一次到为,不得在新数组中重新排序 将两个字符串连接成一个字符串,并将连接后的字符串按升序排列 输入10个真书,将这十个整数按升序排列输出,并且奇数在前,偶数在后. 输入10个整数,将这十个整数按升序排列输出,并且奇数在前,偶数在后. 如何将一个无序的线表转换成一个按升序排列的有序线性表(用链表实现) 用插入法将一组数据按升序排列 急!急!急! 从键盘读入100个二位无符号数,将其按升序排列并显示输出 将"四位平方数"按升序排列,求前十个"四位平方数"的和.(C代码) c语言冒泡法升序排列20个数字遇到的问题 如何在excel中实现随机在1-50之间抽取10个不重复数值,并按升序排列返回在并排的10个单元格内?