简化的插入排序

115 阅读1分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

本题要求编写程序,将一个给定的整数插到原本有序的整数序列中,使结果序列仍然有序。

输入格式: 输入在第一行先给出非负整数N(<10);第二行给出N个从小到大排好顺序的整数;第三行给出一个整数X。

输出格式: 在一行内输出将X插入后仍然从小到大有序的整数序列,每个数字后面有一个空格。

输入样例: 5 1 2 4 5 7 3 结尾无空行 输出样例: 1 2 3 4 5 7 结尾无空行

import java.util.*;
public class Main{
    public static void main(String[] args){
      Scanner sc=new Scanner(System.in);
        int n=sc.nextInt();
        
        int []a=new int [12];
        int flag=0;
        int i,j;
        for(i=0;i<n;i++)
            a[i]=sc.nextInt();
        int x=sc.nextInt();
        for(i=n-1;i>=0;i--)
        {
        	if(a[i]<x)
        		break;
        	else {
        		a[i+1]=a[i];
        	}
        }
        a[i+1]=x;
        
        for(i=0;i<n+1;i++)
        	System.out.print(a[i]+" ");
    }
}