public void quicksort(int[] S, int start, int end) {
		int i = start, j = end;
		int temp = S[start];
		
		while(i < j) {
			while(i < j && S[j] > temp) j--;
			if(i < j) {
				S[i] = S[j];
				i++;
			}
			while(i < j && S[i] < temp) i++;
			if(i < j) {
				S[j] = S[i];
				j--;
			}
		}
		S[i] = temp;
		
		if(start < i-1) quicksort(S, start, i-1);
		if(i+1 < end) quicksort(S, i+1, end);
	}