插入

有序序列插入一个数

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

题目描述
有一个有序数字序列,从小到大排序,将一个新输入的数插入到序列中,保证插入新数后,序列仍然是升序。

输入描述:
共三行,
第一行输入一个整数(0≤N≤50)。
第二行输入N个升序排列的整数,输入用空格分隔的N个整数。
第三行输入想要进行插入的一个整数。
输出描述:
输出为一行,N+1个有序排列的整数。

解题思路
将要插入的数字插入到数组的最后,然后利用sort进行排序,最后输出有序的数组。

代码

#include<iostream>
#include<algorithm>//sort在algorithm中,所以要包含这个头文件,否则不能使用sort

using namespace std;

int main()
{
    int N;
    cin>>N;
    int a[N+2];//数组容量设置的大些,防止索引越界
    for(int i=0;i<N;++i)
        cin>>a[i];//依次输入数组元素
    cin>> a[N];//输入要插入的数
    sort(a,a+N+1);//直接使用sort进行排序,默认是升序排序
    for(int j=0;j<N+1;++j)
        cout<<a[j]<<" ";//经过sort后已经是有序数组了,直接依次输出即可
    return 0;
}
全部评论

相关推荐

合适才能收到offe...:项目岗是什么岗?我看你有段好像跟策划运营相关,如果找运营的话第三段经历写详细点儿。 个人建议是把自我评价删了换成专业技能放在工作经验上或者下面。学生会那个也可以删,把第一个包装成店铺运营,写4-6给点。第三个也是写4-6个点。注意工作内容➕部分数据。 投递的时候BOS招呼用语改一下,换成我有xx工作经验,熟练掌握xx技能样式,也可以简历截图然后直接发送。
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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