Java基础排序---快速排序

Java基础排序—快速排序

package weekNumber4;
import java.util.Arrays;
//快速算法
public class Test11_QKSORT {
	static int[] a = {4,2,8,5,3,1,9,6};
	public static void main(String[] args) {
		System.out.println("原数组值:");
		for(int i:a) {
			System.out.print(i+" ");
		}
		System.out.println();
		method(0,a.length-1);
		for(int i:a) {
			System.out.print(i+" ");
		}
	}
	public static void method(int left,int right) {
		if(left>right) {
			return;
		}
		int temp = a[left];
		int i = left;
		int j = right;
		int t;
		while(i!=j) {
			while(j>i && a[j]>=temp) {
				j--;
			}
			while(i<j && a[i]<=temp) {
				i++;
			}
			if(i<j) {
				t = a[j];
				a[j] = a[i];
				a[i] = t;
			}
		}
		a[left] = a[i];
		a[i] = temp;
		method(left,i-1);
		method(j+1,right);
	}
}

猜你喜欢

转载自blog.csdn.net/qq_35010068/article/details/92073728