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

有序序列合并

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]);
 }

全部评论

相关推荐

LZHR:老哥你从投递简历测评完到一面中间隔了多久呀,我这边已经过了五天了仍显示简历筛选中是不是就是挂了
腾讯求职进展汇总
点赞 评论 收藏
分享
03-04 14:31
门头沟学院 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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