题解 | #有序序列合并#
有序序列合并
https://www.nowcoder.com/practice/a9e943b0dab142759807d0cfb6863897
#include <stdio.h> int main() { int m, n; int arr1[1000], arr2[1000] , arr[2000]; scanf("%d%d", &m, &n); for (int i = 0; i < m; i++) { scanf("%d", &arr1[i]); } for (int i = 0; i < n; i++) { scanf("%d", &arr2[i]); } int j = 0, k = 0, g = 0; while(k<m&&g<n) { (arr1[k] <= arr2[g]) ? (arr[j++] = arr1[k++]) : (arr[j++] = arr2[g++]); } while (k < m) { arr[j++] = arr1[k++]; } while ( g <n) { arr[j++] = arr2[g++]; } for (int i = 0; i < m + n; i++) { printf("%d ", arr[i]); } return 0; }