题解 | #有序序列插入一个数#

有序序列插入一个数

http://www.nowcoder.com/practice/68ae3b28b4a04e098485c4423e2c6548

//    思路来自前面相同一道题的大佬
#include<stdio.h>

int main()
{
    int a =0,arr[50],x=0;
    scanf("%d",&a);
    for(int i = 0;i<a;++i)        //接收
    {
        scanf("%d",&arr[i]);
    }
    scanf("%d",&x);
    int i;
    for(int i = a-1;i>=0;--i)    //从后遍历数组
    {
            if(x>arr[i])    
        {
            arr[i+1]=x; break;
        }
        else
        {
            arr[i+1]=arr[i];    //依次比较,直到x大于任一元素,否则将比较过的元素在数组中后移一位
            arr[i]=x;            //x顶替被比较的元素
        }
    }
    for(int i = 0;i<a+1;++i)
    {
        printf("%d ",arr[i]);
    }
    return 0;
}

全部评论

相关推荐

05-16 11:16
已编辑
东华理工大学 Java
牛客73769814...:盲猜几十人小公司,庙小妖风大,咋不叫她去4️⃣呢😁
牛客创作赏金赛
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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