Public feed #890125

Unbenannt

public text v1 · immutable
Raw Edit
·published 2008-02-03 14:11 UTC
rendered paste body
import java.util.*;

/**
 * Testet unsere Klasse Quicksort
 * 
 * @author (Dominic Lehle) 
 * @version (27.01.08)
 */
public class Test 

{
      
    public static void main(String[] args)
    {   
        Quicksort.PivotSelection test1 = Quicksort.PivotSelection.erstes;
        Quicksort.PivotSelection test2 = Quicksort.PivotSelection.mitte;
        Quicksort.PivotSelection test3 = Quicksort.PivotSelection.letztes;
        Quicksort.PivotSelection test4 = Quicksort.PivotSelection.zufall;
        Quicksort.PivotSelection test5 = Quicksort.PivotSelection.median;
        String array1[] = zufallszahlen(1000000);
        String[] array2=Arrays.copyOf( array1, array1.length );
        String[] array3=Arrays.copyOf( array1, array1.length );
        String[] array4=Arrays.copyOf( array1, array1.length );
        String[] array5=Arrays.copyOf( array1, array1.length );
        
        System.out.println("Test1 mit Methode1 :");
        long zeit1 = System.currentTimeMillis();
        Quicksort.quicksort(array1,0,array1.length-1,test1);
        zeit1 = System.currentTimeMillis()-zeit1;
        System.out.println("Zeit vergangen in ms : " +  zeit1 );
        System.out.println("Ist der Array richtig sortiert? - " + richtigsortiert(array1));
        
        
        System.out.println("\n" + "//////////////////////");
        System.out.println("Test2 mit Methode2 :");
        long zeit2 = System.currentTimeMillis();
        Quicksort.quicksort(array2,0,array2.length-1,test2);
        zeit2 = System.currentTimeMillis()-zeit2;
        
        System.out.println("Zeit vergangen in ms : " + zeit2 );
        System.out.println("Ist der Array richtig sortiert? - " + richtigsortiert(array2));
        
        
        System.out.println("\n" + "//////////////////////");
        System.out.println("Test3 mit Methode3 :");
        long  zeit3 = System.currentTimeMillis();
        Quicksort.quicksort(array3,0,array3.length-1,test3);
         zeit3 = System.currentTimeMillis()-zeit3;
        System.out.println("Zeit vergangen in ms : " + zeit3);
        System.out.println("Ist der Array richtig sortiert? - " + richtigsortiert(array3));

        
        System.out.println("\n" + "//////////////////////");
        System.out.println("Test4 mit Methode4 :");
        long zeit4 = System.currentTimeMillis();
        Quicksort.quicksort(array4,0,array4.length-1,test4);
        zeit4 = System.currentTimeMillis()-zeit4;
        System.out.println("Zeit vergangen in ms : " + zeit4);
        System.out.println("Ist der Array richtig sortiert? - " + richtigsortiert(array4));
        
        System.out.println("\n" + "//////////////////////");
        System.out.println("Test5 mit Methode5 :");
        long zeit5 = System.currentTimeMillis();
        Quicksort.quicksort(array5,0,array5.length-1,test5);
        zeit5 = System.currentTimeMillis()-zeit5;
        System.out.println("Zeit vergangen in ms : " + zeit5);
        System.out.println("Ist der Array richtig sortiert? - " + richtigsortiert(array5));

        
        
        
        
       }
        
    /**
     * erzeugt eine Zufallszahl (2 stellig)
     */
public static int zufallszahl()    
    {
        Random zufallsgenerator;
        zufallsgenerator = new Random();
        int index = zufallsgenerator.nextInt();
        index = index/100000000;
        if (index<0)
        {
            index= index * -1;
        }
        return index;
    }
 /**
  * erzeugt einen String von Zufallszahlen
  * @param Anzahl der zufallszahlen
  * @return String Array mit zufallszahlen
  */
    public static String[] zufallszahlen(int n)
    {
    
    String[] Zufall;
    Zufall = new String[n];
    String temp;
    
    for (int i = 0 ; i < n; i++)
    {
        int f = zufallszahl();
        temp = (new Integer(f)).toString();
        Zufall[i]= temp;
    }
    return Zufall;
  }
   public static < T extends Comparable > boolean richtigsortiert(T array[])
   { boolean a=false;
        for( int i=0 ; i < array.length-1 ; i++ )
        {
            if (array[i].compareTo(array[i+1])<0)
            {
                a= true;
            }
            else
            {
            
            }
        }
        return a;
    }
    
  
 
    
}