天天看點

藍橋杯 冒泡排序

問題描述   給定一個長度為n的數列,将這個數列按從小到大的順序排列。1<=n<=200 輸入格式   第一行為一個整數n。

  第二行包含n個整數,為待排序的數,每個整數的絕對值小于10000。 輸出格式   輸出一行,按從小到大的順序輸出排序後的數列。 樣例輸入 5

8 3 6 4 9 樣例輸出 3 4 6 8 9   public class Paixu {

public static void main(String[] args) {

Scanner sc=new Scanner(System.in);

int[] a;

int n;

while (sc.hasNext()) {

n=sc.nextInt();

a=new int[n];

for(int i=0;i<n;i++)

{

a[i]=sc.nextInt();

}

for(int i=0;i<n;i++)//冒泡排序得是兩個循環,一個外循環,一個内循環

for(int j=0;j<n-1;j++)

{

if(a[j+1]<a[j])

{

   int temp=a[j];

a[j]=a[j+1];

a[j+1]=temp;

}

//Arrays.sort(a);//也可以用java自帶的方法

}

for(int i=0; i<n; i++)

System.out.print(a[i] + " ");

}

}

}