题解 | #有序序列合并#

有序序列合并

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

#include<stdlib.h>
int cmp_int(const void* e1, const void* e2)
{
    //规定e1<e2时,返回负数;e1=e2,返回0;e1>e2,返回正数;这样这里就是实现的升序效果
    //若想实现降序,e1<e2时,返回正数;e1=e2,返回0;e1>e2,返回负数
    //void类型的指针可接受任意类型的指针,缺点是无法进行计算
    return *(int*)e2 - *(int*)e1;
}
int main()
{
    int arr[2000] = { 0 };
    int n = 0;
    int m = 0;
    scanf("%d %d", &n, &m);
    int i = 0;
    for (i = 0; i < n; i++)
    {
        scanf("%d", &arr[i]);
    }
    for (i = n; i < n + m; i++)
    {
        scanf("%d", &arr[i]);
    }
    qsort(arr,sizeof(arr)/sizeof(arr[0]),sizeof(arr[0]),cmp_int);
    for (i = n + m - 1; i >= 0; i--)
    {
        printf("%d ", arr[i]);
    }
    return 0;
}

全部评论

相关推荐

11-11 14:21
西京学院 C++
无敌混子大王:首先一点,不管学校层次怎么样,教育经历放在第一页靠上位置,第一页看不到教育经历,hr基本直接扔掉了
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务