题解 | 有序序列合并 指针比较排序

有序序列合并

https://www.nowcoder.com/practice/a9e943b0dab142759807d0cfb6863897

#include <stdio.h>
#include<stdlib.h>
int main(){
    int n, m;
    scanf("%d %d", &n, &m);
    int*a1=(int*)malloc(n*sizeof(int));
     int*a2=(int*)malloc(m*sizeof(int));
     int *result = (int*)malloc((n + m) * sizeof(int));
for (int i = 0; i < n; i++) 
        scanf("%d", &a1[i]); 
        for (int i = 0; i <m; i++) 
        scanf("%d", &a2[i]); 
         int *p1 = a1, *p2 = a2, *p = result;
while(p1<a1+n&&p2<a2+m)
    *p++=(*p1<*p2)?*p1++:*p2++;
while(p1<a1+n) *p++=*p1++;
while (p2 < a2 + m)  *p++ = *p2++; 
 for (int i = 0; i < n + m; i++) 
        printf("%d ", result[i]);
 }

全部评论

相关推荐

10-22 20:17
已编辑
门头沟学院 Python
敢逐云霄志:后端没92学历+大厂实习基本别想在秋招约面了,笔试可能都不会给你发,我双非本3段实习,一大,中,一小,中大厂笔试做了一堆,大厂就只有字节给面,其他全没动静,根本轮不到双非。
你觉得第一学历对求职有影...
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务