All pastes #416006 Raw Edit

Untitled

public java v1 · immutable
#416006 ·published 2007-03-30 00:26 UTC
rendered paste body
public class QuickSortInsertion{    public void quickSortInsertion(int array[])    {        quickSortRec(array, 0, array.length-1);    }        private void quickSortRec(int array[], int left, int right)    {    	if(right-left < 100) {    		insertSortIter(array, left, right);    	} else {    		int pivotIndex = partition(array, left, right);    		quickSortRec(array, left, pivotIndex-1);    		quickSortRec(array, pivotIndex+1, right);    	}    }        private int partition(int array[], int left, int right)    {        int pivot = array[left];        int limit = left;        for (int i = left+1; i <= right; i++) {            if (array[i] < pivot) {                limit++;                swap(array, limit, i);            }        }        swap(array, left, limit);        return limit;    }        private void insertSortIter(int[] array, int left, int right)    {    	for(int i=left; i<=right; i++) {    		insert(array, i, right, array[i]);    	}    }        private void insert(int[] array, int left, int right, int value) {    	int i = right-1;        while (i >= left && array[i] > value) {            array[i+1] = array[i];            i--;        }        array[i+1] = value;    }        private void swap(int array[], int index1, int index2)    {        int temp = array[index1];        array[index1] = array[index2];        array[index2] = temp;    }}