Java常用排序算法

package com.xiaobian;

public class BubbleSort {
	//冒泡排序
	public static void bubbleSort(int[] data){
		for(int i=0;i<data.length;i++){
			for(int j=data.length-1;j>i;j--){
				if(data[j]<data[j-1])
					swap(data,j,j-1);
			}
		}
	}
	//直接插入排序
	public static void insertSort(int[] data){
	        for(int i=1;i<=data.length-1;i++){
	            for(int j=i;(j>0)&&(data[j]<data[j-1]);j--){
	                swap(data,j,j-1);
	            }
	        }        
	}
	//直接选择排序
	public static void selectionSort(int[] data){
	      for (int i = 0; i < data.length; i++) {
	            int lowIndex = i;
	            for (int j = data.length - 1; j > i; j--) {
	                if (data[j] < data[lowIndex]) {
	                    lowIndex = j;
	                }
	            }
	            swap(data,i,lowIndex);
	            }
	}
	public static void swap(int[] array,int i,int j){
		int temp = array[i];
		array[i] = array[j];
		array[j] = temp;
	}
	public static void main(String[] args) {
		int[] a = {1,6,3,9,2,12,56,13,111};
		BubbleSort.selectionSort(a);
		for(int i=0;i<a.length;i++){
			System.out.println(" "+a[i]);
		}
	}

}

你可能感兴趣的:(java,算法,J#)