ソートアルゴリズム-バブルソート(Bubble Sort)
5427 ワード
package com.wangzhu.sort;
/**
*
* @ClassName: BubbleSort
* @Description: TODO
* @author wangzhu
* @date 2013-8-12 10:37:28
*
*/
public class BubbleSort {
/**
* @param args
*/
public static void main(String[] args) {
int[] arr1 = new int[]{10,9,8,7,6,5,4,3,2,1};
sort(arr1);
int[] arr2 = new int[]{1,2,3,4,5,6,7,8,9,10};
sort(arr2);
int[] arr3 = new int[]{1,1,1,2,2,3,3,3,4,5};
sort(arr3);
int[] arr4 = new int[]{2,2,1,3,1,1,1,2,3,3,2};
sort(arr4);
int[] arr5 = new int[]{11,-9,-8,17,-6,51,14,31,42,51};
sort(arr5);
int[] arr6 = new int[]{-1,-2,-3,-4,-5,-6,-7,-8,-9,-10};
sort(arr6);
int[] arr7 = new int[]{-1,-1,-1,-2,-2,-3,-3,-3,-4,-5};
sort(arr7);
int[] arr8 = new int[]{2,2,1,2,3,4,5,6,8,9,10,10,10};
sort(arr8);
}
/**
* :
* @param arr
*/
public static void sort(int[] arr){
for(int i = 0 ,len = arr.length; i < len;i ++){
boolean isSort = true;// , ,
// ,
for(int j = len - 1;j > i; j--){
// ,
if(arr[j - 1] > arr[j]){
int temp = arr[j - 1];
arr[j - 1] = arr[j];
arr[j] = temp;
isSort = false;
}
}
if(isSort){
break;
}
}
show(arr);
}
private static void show(int[] arr) {
for(int num:arr){
System.out.print(" " + num);
}
System.out.println("===============");
}
}
バブルソートアルゴリズムの定義に基づいて、簡単に実現しました.参考までに、間違いがあれば、指摘してください.ありがとうございます.