1. 程式人生 > >Java經典算法冒泡排序

Java經典算法冒泡排序

位置 [] center generated 輸入 java println aop 冒泡

冒泡排序、

實現原理:

比較兩個相鄰位數的元素,將較大的元素交換到右端或左端,最大的元素就在最右端或是最左端;

從小-->大



 1 public class MaoPao {
 2 
 3 public static void main(String[] args) {
 4 // TODO Auto-generated method stub
 5 Scanner sc= new Scanner(System.in);
 6 int [] num = new int [5];
 7 for (int i = 0; i < num.length; i++) {
 8 System.out.println("開始輸入第"+(i+1)+"個數");//
輸入5個整數 9 num[i]=sc.nextInt(); 10 } 11 for (int i = 0; i < num.length; i++) { 12 System.out.print(num[i]+",");//冒泡之前 13 } 14 System.out.println(" "); 15 System.out.println("開始冒泡"); 16 for (int i = 0; i < num.length-1; i++) { 17 for (int j = 0; j < num.length-1-i; j++) { 18 19 if (num[j]>num[j+1]) {
20 int temp=num[j+1]; 21 num[j+1]=num[j];//交換位置 22 num[j]=temp; 23 24 } 25 } 26 } 27 for (int i = 0; i < num.length; i++) { 28 System.out.print(num[i]+","); //冒泡之後 29 } 30 31 }



 

從大-->小

public class MaoPao {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
Scanner sc= new Scanner(System.in); int [] num = new int [5]; for (int i = 0; i < num.length; i++) { System.out.println("開始輸入第"+(i+1)+"個數");//輸入5個整數 num[i]=sc.nextInt(); } for (int i = 0; i < num.length; i++) { System.out.print(num[i]+",");//冒泡之前 } System.out.println(" "); System.out.println("開始冒泡"); for (int i = 0; i < num.length-1; i++) { for (int j = 0; j < num.length-1-i; j++) { if (num[j]<num[j+1]) { int temp=num[j]; num[j]=num[j+1]; num[j+1]=temp; } } } for (int i = 0; i < num.length; i++) { System.out.print(num[i]+","); //冒泡之後 } }

Java經典算法冒泡排序