Programmierung

Selection Sort - Java


 
  1. Aufgabe

    Sortieren durch direkte Auswahl.
    Eine einfache Sortiermethode für kleine und da jedes Element nur einmal bewegt wird auch für sehr große Dateien. Die meiste Zeit wird dafür benötigt, das kleinste Element zu finden.
    Benötigt N²/2 Vergleiche und N Austauschoperationen.

    Das kleinste Element wird gesucht und gegen das Element an erster Stelle ausgetauscht, danach wird das zweitkleinste Element gesucht und gegen das Element an zweiter Stelle getauscht und fahre so fort bis das gesamte Feld sortiert ist.

  2. Struktogramm

    Selection-Sort

  3. Quellcode

    /** Funktion: Selection-Sort, sortieren durch direkte Auswahl
         Applikation ohne Oberfläche, läuft in der Dos-Box: "java selection"
         @author  DG1XPZ
         @version JDK131
    */

    class selection {

      
    static int[ ] zahlen={ 9,5,8,6,3,7,4,0,1,2 };  //Array "zahlen" deklarieren und befüllen

       public static void main( String[ ] vArgs ) {
           selection s = new selection ( );             //Instanz von der Klasse "selection" erzeugen
           zahlen=s.sort( zahlen );                         //Feld "zahlen" sortieren
          
    System.out.println(s.toString( )); //Feld "zahlen" ausgeben
       }

      
    /** Funktion: Sortieren eines Arrays nach der Selection-Sort-Methode
            @param array Das zu sortierende Array
            @return           Rückgabe des sortierten Arrays
       */
       public int
    [ ] sort( int[ ] z) {
           for ( int i=0; i<z.length-1
    ; i++ ) {
              int min=i;
              for ( int j=i+1; j<z.length; j++) {
                 if ( z[ j ] < z[ min ] ) {
                   
    min=j;
                 }
              }

              int temp=z[ min ];
              z[ min ] = z [ i ];
              z[ i ] = temp;
           }
           return z;
       } //public int[ ] sort(int[ ] z)

      /** Funktion: Den Inhalt des 1-Dimensionalen Arrays zu einem String zusammenfügen
           @return           Rückgabe des zusammengefügten Strings
       /*

       public
    String toString( ) {
           String
    s="";
           for ( int i=0; i<zahlen.length; i++ ) {
              s=s+zahlen[ i ]+", ";                  //sortierte Zahlen zum String hinzufügen + Komma
           }
           s=s+"\n" );                                   //Zeilenumbruch zum Schluss hinzufügen
          
    return s;                                      //Rückgabe des zusammengefügten Strings
       } //public String toString( )

    } //class selection



  4. Download selection.java

  5. Download selection.class

 

http://www.counter-service.de http://www.counter-service.de

Home
uebermich
Programmierung
Amateurfunk
Elektronik
Download
Links
E-Mail
Gästebuch/Meckerecke
Counter-DG1XPZ