빠른 정렬의 간단한 실례

973 단어 빠른 정렬
코드는 다음과 같습니다.
public class QuickSortTest {

	public static void main(String[] args) {
		int[] arr = {9,8,10,7,5,6,3,2,4,-1};
		SortUtil.showArr(arr);
		quickSort(arr,0,arr.length -1);
		SortUtil.showArr(arr);
	}

	public static void quickSort(int[] arr,int low ,int high) {
		int i = low;
		int j = high;
		int temp = arr[i];
		while(i < j) {
			while (i < j && temp < arr[j]) {
				j--;
			}
			if (i < j) {
				arr[i] = arr[j];
			}
			while (i < j && temp > arr[i]) {
				i++;
			}
			if (i < j) {
				arr[j] = arr[i];
			}
		}
		arr[i] = temp;
		if (low < i - 1) {
			quickSort(arr,low,i -1);
		}
		if (j + 1 < high) {
			quickSort(arr,j + 1,high);
		}
	}
}

생각: 어떻게 귀환을 순환으로 쓸 수 있습니까?생각이 하나도 없는데?가르침을 구하다

좋은 웹페이지 즐겨찾기