Java简单排序

package com.harrison.java;

public class selectionSort {
    
    
	public static void swap(int[] arr,int i,int j) {
    
    
		int tmp=arr[j];
		arr[j]=arr[i];
		arr[i]=tmp;
	}
	public static void selectSort(int [] arr) {
    
    
		if(arr==null || arr.length<2) {
    
    
			return;
		}
		int N=arr.length;
		for(int i=0; i<N; i++) {
    
    
			int minValueIndex=i;
			for(int j=i+1; j<N; j++) {
    
    
				minValueIndex=arr[j]<arr[minValueIndex]?j:minValueIndex;
			}
			swap(arr,i,minValueIndex);
		}
	}
	public static void bubbleSort(int []arr) {
    
    
		if(arr==null || arr.length<2) {
    
    
			return;
		}
		int N=arr.length;
		for(int end=N-1; end>=0; end--) {
    
    
			for(int second=1; second<=end; second++) {
    
    
				if(arr[second-1]>arr[second]) {
    
    
					swap(arr,second-1,second);
				}
			}
		}
	}
	public static void insertSort(int []arr) {
    
    
		if(arr==null || arr.length<2) {
    
    
			return;
		}
		int N=arr.length; 
		for(int end=1; end<N; end++) {
    
    
			for(int pre=end-1; pre>=0 && arr[pre]>arr[pre+1]; pre--) {
    
    
				swap(arr,pre,pre+1);
			}
		}
	}
	public static void printArray(int[] arr) {
    
    
		for(int i=0; i<arr.length; i++) {
    
    
			System.out.print(arr[i]+" ");
		}
		System.out.println();
	}
	public static void main(String[] args) {
    
    
		int[] arr= {
    
    34,44,-34,-4,0,5,43,-449,48};
		printArray(arr);
		
		selectSort(arr);
		printArray(arr);
		
		bubbleSort(arr);
		printArray(arr);
		
		insertSort(arr);
		printArray(arr);
	}
}

猜你喜欢

转载自blog.csdn.net/weixin_44337241/article/details/119182012