Zidinjo

MachenAlgo

Jun 10th, 2015
309
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 6.44 KB | None | 0 0
  1. package aufgabe1InsertionSort;
  2.  
  3. import java.util.Random;
  4.  
  5. public class Machen
  6. {
  7.     Random r = new Random();
  8.     private int maxRdm = 100;
  9.     private int minRdm = 0;
  10.     //private int maxArray = (int) Math.pow(10, 5); ///r.nextInt(maxRdm)+minRdm;
  11.     private int[] zufall100 = new int[100];
  12.     private int[] zufallunterschiedlich = new int[100000];
  13.     private int[] sortierefolge = {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20};
  14.    
  15.     Machen()
  16.     {
  17.         Insertionsort insertionSorti = new Insertionsort();
  18.         Insertionsort insertionSorti2 = new Insertionsort();
  19.         Insertionsort insertionSorti3 = new Insertionsort();
  20.         Quicksort quickSorti = new Quicksort();
  21.         Quicksort quickSorti2 = new Quicksort();
  22.         Quicksort quickSorti3 = new Quicksort();
  23.         QuicksortRandom neuerQuicksort = new QuicksortRandom();
  24.         QuicksortRandom neuerQuicksort2 = new QuicksortRandom();
  25.         QuicksortRandom neuerQuicksort3 = new QuicksortRandom();
  26.         QuickSortMedian neuerQuickMedian = new QuickSortMedian();
  27.         QuickSortMedian neuerQuickMedian2 = new QuickSortMedian();
  28.         QuickSortMedian neuerQuickMedian3 = new QuickSortMedian();
  29.         Mergesort merge = new Mergesort();
  30.         Mergesort merge2 = new Mergesort();
  31.         Mergesort merge3 = new Mergesort();
  32.        
  33.         for(int i = 0; i < zufall100.length;i++)
  34.         {
  35.           zufall100[i] = (r.nextInt(maxRdm)+minRdm);
  36.         }
  37.        
  38.         for (int i = 0; i < zufallunterschiedlich.length; i++)
  39.         {
  40.           zufallunterschiedlich[i] = (r.nextInt());
  41.         }
  42.        
  43.         // Insertionsort
  44.         long anfang = System.currentTimeMillis();
  45.         insertionSorti.sort(zufall100.clone());
  46.         long ende = System.currentTimeMillis();
  47.        
  48.         long anfang2 = System.currentTimeMillis();
  49.         insertionSorti2.sort(zufallunterschiedlich.clone());
  50.         long ende2 = System.currentTimeMillis();
  51.        
  52.         long anfang3 = System.currentTimeMillis();
  53.         insertionSorti3.sort(sortierefolge.clone());
  54.         long ende3 = System.currentTimeMillis();
  55.        
  56.         // Quicksort
  57.         long anfang4 = System.currentTimeMillis();
  58.         quickSorti.sort(zufall100.clone());
  59.         long ende4 = System.currentTimeMillis();
  60.        
  61.         long anfang5 = System.currentTimeMillis();
  62.         quickSorti2.sort(zufallunterschiedlich.clone());
  63.         long ende5 = System.currentTimeMillis();
  64.        
  65.         long anfang6 = System.currentTimeMillis();
  66.         quickSorti3.sort(sortierefolge.clone());
  67.         long ende6 = System.currentTimeMillis();
  68.        
  69.         // QuickSortRandom
  70.         long anfang7 = System.currentTimeMillis();
  71.         neuerQuicksort.sort(zufall100.clone());
  72.         long ende7 = System.currentTimeMillis();
  73.        
  74.         long anfang8 = System.currentTimeMillis();
  75.         neuerQuicksort2.sort(zufallunterschiedlich.clone());
  76.         long ende8 = System.currentTimeMillis();
  77.        
  78.         long anfang9 = System.currentTimeMillis();
  79.         neuerQuicksort3.sort(sortierefolge.clone());
  80.         long ende9 = System.currentTimeMillis();
  81.        
  82.         //QuickSortMedian
  83.         long anfang10 = System.currentTimeMillis();
  84.         neuerQuickMedian.sort(zufall100.clone());
  85.         long ende10 = System.currentTimeMillis();
  86.        
  87.         long anfang11 = System.currentTimeMillis();
  88.         neuerQuickMedian2.sort(zufallunterschiedlich.clone());
  89.         long ende11 = System.currentTimeMillis();
  90.        
  91.         long anfang12 = System.currentTimeMillis();
  92.         neuerQuickMedian3.sort(sortierefolge.clone());
  93.         long ende12 = System.currentTimeMillis();
  94.        
  95.         //MergeSort
  96.         long anfang13 = System.currentTimeMillis();
  97.         merge.sort(zufall100.clone());
  98.         long ende13 = System.currentTimeMillis();
  99.        
  100.         long anfang14 = System.currentTimeMillis();
  101.         merge2.sort(zufallunterschiedlich.clone());
  102.         long ende14 = System.currentTimeMillis();
  103.        
  104.         long anfang15 = System.currentTimeMillis();
  105.         merge3.sort(sortierefolge.clone());
  106.         long ende15 = System.currentTimeMillis();
  107.        
  108.        
  109.        
  110.         System.out.println("Insertionsort zufällig 100 "+(ende-anfang)/1000+" Sekunden gedauert und  " + insertionSorti.getCounter()+" zugriffe gehabt");
  111.         System.out.println("Insertionsort zufällig unterschiedlich "+(ende2-anfang2)/1000+" Sekunden gedauert und  " + insertionSorti2.getCounter()+" zugriffe gehabt");
  112.         System.out.println("Insertionsort sortiertefolge "+(ende3-anfang3)/1000+" Sekunden gedauert und  " + insertionSorti3.getCounter()+" zugriffe gehabt");
  113.         System.out.println();
  114.         System.out.println("QuicksortNormal zufällig 100 "+(ende4-anfang4)/1000+" Sekunden gedauert und  " + quickSorti.getCounter()+" zugriffe gehabt");
  115.         System.out.println("QuicksortNormal zufällig unterschiedlich "+(ende5-anfang5)/1000+" Sekunden gedauert und  " + quickSorti2.getCounter()+" zugriffe gehabt");
  116.         System.out.println("QuicksortNormal sortiertefolge "+(ende6-anfang6)/1000+" Sekunden gedauert und  " + quickSorti3.getCounter()+" zugriffe gehabt");
  117.         System.out.println();
  118.         System.out.println("QuicksortZufällig zufällig 100 "+(ende7-anfang7)/1000+" Sekunden gedauert und  " + neuerQuicksort.getCounter()+" zugriffe gehabt");
  119.         System.out.println("QuicksortZufällig zufällig unterschiedlich "+(ende8-anfang8)/1000+" Sekunden gedauert und  " + neuerQuicksort2.getCounter()+" zugriffe gehabt");
  120.         System.out.println("QuicksortZufällig sortiertefolge "+(ende9-anfang9)/1000+" Sekunden gedauert und  " + neuerQuicksort3.getCounter()+" zugriffe gehabt");
  121.         System.out.println();
  122.         System.out.println("QuicksortMedian zufällig 100 "+(ende10-anfang10)/1000+" Sekunden gedauert und  " + neuerQuickMedian.getCounter()+" zugriffe gehabt");
  123.         System.out.println("QuicksortMedian zufällig unterschiedlich "+(ende11-anfang11)/1000+" Sekunden gedauert und  " + neuerQuickMedian2.getCounter()+" zugriffe gehabt");
  124.         System.out.println("QuicksortMedian sortiertefolge "+(ende12-anfang12)/1000+" Sekunden gedauert und  " + neuerQuickMedian3.getCounter()+" zugriffe gehabt");
  125.         System.out.println();
  126.         System.out.println("Mergesort zufällig 100 "+(ende13-anfang13)/1000+" Sekunden gedauert und  " + merge.getCounter()+" zugriffe gehabt");
  127.         System.out.println("Mergesort zufällig unterschiedlich "+(ende14-anfang14)/1000+" Sekunden gedauert und  " + merge2.getCounter()+" zugriffe gehabt");
  128.         System.out.println("Mergesort sortiertefolge "+(ende15-anfang15)/1000+" Sekunden gedauert und  " + merge3.getCounter()+" zugriffe gehabt");
  129.    }
  130. }
Advertisement
Add Comment
Please, Sign In to add comment