1 冒泡排序的思想类似气泡上升,数组前后元素两两比较,如果前面的元素比后面的大就交换位置,每趟排序都可以确定最大值的位置
2 选择排序思想类似打擂台,每趟比较都把最小的值排在数组最前面,每趟比较都可以确定最小值的位置
public class SortTest {
	public static void main(String[] args) {
		//选择排序
		int arr[] = {2,9,10,5,4,8,7,1,3,6};
		choose(arr);
		System.out.println();
		//冒泡排序
		int arr2[] = {2,9,10,5,4,8,7,1,3,6};
		bubble(arr2);
	}
	/**
	 * 选择排序
	 * @param arr
	 */
	public static void choose(int arr[]){
		for(int i=0;i<arr.length;i++){
			for(int j=i+1;j<arr.length;j++){
				//每次都将最小的值放在最前面
				if(arr[i]>arr[j]){
					int temp = arr[j];
					arr[j] = arr[i];
					arr[i] = temp;
				}
			}
		}
		for(int a:arr){
			System.out.print(a+" ");
		}
	}
	/**
	 * 冒泡排序
	 */
	public static void bubble(int arr[]){
		for(int i=0;i<arr.length;i++){
			for(int j=0;j<arr.length-i-1;j++){
				//前后比较,大的值放在后面
				if(arr[j]>arr[j+1]){
					int temp = arr[j];
					arr[j] = arr[j+1];
					arr[j+1] = temp;
				}
			}
		}
		for(int a:arr){
			System.out.print(a+" ");
		}
	}
}
程序运行结果为:
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
原文:http://www.cnblogs.com/notejava/p/7124219.html