All pastes #774290 Raw Edit

Unnamed

public text v1 · immutable
·published 2007-11-15 04:27 UTC
rendered paste body
public class SortDriver implements Sorting
{
        public Integer[] randArray(int size)
        {
                Random generator = new Random();
                Integer array[] = new Integer[0];
                if (size==0)
                        array = new Integer[50];
                if (size==1)
                        array = new Integer[100];
                if (size==2)
                        array = new Integer[1024];
                if (size==3)
                        array = new Integer[10000];
                for (int i = 0; i<array.length; i++)
                {
                        array[i] = generator.nextInt(array.length);
                }
                return array;
        }

        public static void main(String[] args)
        {
                final int NTimes = 200;
                Integer[][][] data = new Integer[4][NTimes][];
                for (int i=0; i<4; i++)
                {
                        Integer[] temp = randArray(i);
                        for (int j=0; j<NTimes; j++)
                        {
                                data[i][j] = new Integer[temp.length];
                                for (int k=0; k<temp.length; k++)
                                        data[i][j][k] = temp[k];
                        }
                }
                long[][] results = new long[6][4];
                for (int l = 0; l<6; l++)
                {
                        Integer[][][] temp = new Integer[4][NTimes][];
                        for (int i=0; i<4; i++)
                        {
                                for (int j=0; j<NTimes; j++)
                                {                                        for (int k=0; k<temp[i][j].length; k++)
                                                temp[i][j][k] = data[i][j][k];
                                }
                        }
                        for (int i=0; i<4; i++)
                        {
                                long first = System.nanoTime();
                                for (int j=0; j<NTimes; j++)
                                {
                                        for (int k=0; k<temp[i][j].length; k++)
                                        {
                                                if (l==0)
                                                        selectionSort(temp[i][j], temp[i][j].length);
                                                if (l==1)
                                                        bubbleSort(temp[i][j], temp[i][j].length);
                                                if (l==2)
                                                        insertionSort(temp[i][j], temp[i][j].length);
                                                if (l==3)
                                                        mergeSort(temp[i][j], 0, temp[i][j].length);
                                                if (l==4)
                                                        quickSort(temp[i][j], 0, temp[i][j].length);
                                                if (l==5)
                                                        shellSort(temp[i][j], temp[i][j].length);
                                        }
                                }
                                results[l][i] = System.nanoTime() - first;
                        }
                }
        }
}