import java.io.*; import java.util.*; public class Driver{ public static void main(String[] args){ //Radix a = new Radix(10000,3); //Radix b = new Radix(1000000,3); //Radix c = new Radix(10000,20); //Radix d = new Radix(1000000,20); Radix a = new Radix(100,3); Radix b = new Radix(100000,3); Radix c = new Radix(100,20); Radix d = new Radix(100000,20); System.out.println(Arrays.toString(a.insertSort(a.getData()))); System.out.println(b.insertSort(b.getData())); System.out.println(c.insertSort(c.getData())); System.out.println(d.insertSort(d.getData()));//no idea why runs so fast; gotta go fast System.out.println(b.getSwaps()); System.out.println(b.getConds()); System.out.println(d.getSwaps()); System.out.println(d.getConds()); //System.out.println(Arrays.toString(a.selectSort(a.getData()))); //System.out.println(b.selectSort(b.getData())); //System.out.println(c.selectSort(c.getData())); //System.out.println(d.selectSort(d.getData())); //System.out.println(Arrays.toString(a.bSort(a.getData()))); //System.out.println(b.bSort(b.getData())); //System.out.println(c.bSort(c.getData())); //the 20 digits doesn't seem to work due to the long restriction if it were printed out //System.out.println(d.bSort(d.getData())); //System.out.println(Arrays.toString(a.optBSort(a.getData()))); //System.out.println(b.optBSort(b.getData())); //System.out.println(c.optBSort(c.getData())); //System.out.println(d.optBSort(d.getData())); /*double t=System.currentTimeMillis(); a.sort(); System.out.print("10000 elements in with 3 digits: "); System.out.println(System.currentTimeMillis()-t); t=System.currentTimeMillis(); b.sort(); System.out.print("1000000 elements in with 3 digits: "); System.out.println(System.currentTimeMillis()-t); t=System.currentTimeMillis(); c.sort(); System.out.print("10000 elements in with 20 digits: "); System.out.println(System.currentTimeMillis()-t); t=System.currentTimeMillis(); d.sort(); System.out.print("1000000 elements in with 20 digits: "); System.out.println(System.currentTimeMillis()-t); t=System.currentTimeMillis(); int[] data = new int[10000]; Random r = new Random(); double r1 = r.nextDouble(); for (int i = 0; i<data.length;i++){ r1=r.nextDouble(); data[i]=(int)(r1*Math.pow(10,3)); } Arrays.sort(data); System.out.print("Legit Sort 10000 elements in with 3 digits: "); System.out.println(System.currentTimeMillis()-t); t=System.currentTimeMillis(); int[] data2 = new int[1000000]; Random r2 = new Random(); double r3 = r2.nextDouble(); for (int i = 0; i<data2.length;i++){ r3=r.nextDouble(); data2[i]=(int)(r3*Math.pow(10,3)); } Arrays.sort(data2); System.out.print("Legit Sort 1000000 elements in with 3 digits: "); System.out.println(System.currentTimeMillis()-t); t=System.currentTimeMillis(); int[] data3 = new int[10000]; Random r4 = new Random(); double r5 = r4.nextDouble(); for (int i = 0; i<data3.length;i++){ r5=r4.nextDouble(); data3[i]=(int)(r5*Math.pow(10,3)); } t=System.currentTimeMillis(); Arrays.sort(data3); System.out.print("Legit Sort 10000 elements in with 20 digits: "); System.out.println(System.currentTimeMillis()-t); t=System.currentTimeMillis(); int[] data4 = new int[1000000]; Random r6 = new Random(); double r7 = r6.nextDouble(); for (int i = 0; i<data4.length;i++){ r7=r6.nextDouble(); data4[i]=(int)(r7*Math.pow(10,3)); } t=System.currentTimeMillis(); Arrays.sort(data4); System.out.print("Legit Sort 1000000 elements in with 20 digits: "); System.out.println(System.currentTimeMillis()-t); t=System.currentTimeMillis(); */ } }