题解 | #整型数组合并#

整型数组合并

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

#include <stdio.h>
#include <stdlib.h>
int arr[10000]={0};

void qSort(int *num,int n)
{
    int i,j,tem;
    for(i=0;i<n;i++)
    {
        for(j=0;j<n-1;j++)
        {
            if(num[j]>=num[j+1])
            {
                tem=num[j];
                num[j]=num[j+1];
                num[j+1]=tem;
            }
        }
    }
}

int main() {
    int a, b;
    while (scanf("%d", &a) != EOF) { 
        // int num1[a];
        for(int i=0;i<a;i++)
        {
            scanf("%d",&arr[i]);
        } 

        scanf("%d",&b);
        // int res[a+b];
        // int num2[b];

        for(int i=a;i<b+a;i++)
            scanf("%d",&arr[i]);
        qSort(arr, a+b);
        for(int i=0;i<=a+b+1;i++)
            if(arr[i]!=arr[i+1])
            printf("%d", arr[i]);
            // printf("\n%d", getLength(num1));
    }
    return 0;
}

使用数组的时候,注意数组越界。

在某些时候,对数组的输出可以施加条件将不需要输出的元素筛选掉,例如本题就可以先将数组合并、排序,然后重复的数组元素就会集中挨在一起,这时候给限制相同的元素只能打印一个,也就是说如果i元素与i-1相同,那就不打印了。

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-07 13:47
机械打工仔:你自己匿名可以,这么好的公司就别给它匿名了
点赞 评论 收藏
分享
05-19 15:21
已编辑
门头沟学院 Java
白火同学:你才沟通了200,说实话,北上广深杭这里面你连一座城市的互联网公司都没投满呢,更别说还有各种准一线二线城市了。等你沟通突破了三位数,还没结果再考虑转行的事吧。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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