# array nach jeder neue eingabe sortieren



## NaBoun (5. Sep 2007)

hallo,
wie schon der titel sagt: ich muss ein prog schreiben dass ein array mit 50 feldern belegt. das feld soll über tastatur eingabe schrittweise aufgebaut werden. dabei sollen neue eingaben sortiert eingefügt werden.
und das für ein integer-array.
ich habe keine ahnung wie ich an diese aufgaben rangehen soll.
bitte um hilfe
danke im voraus


----------



## Wildcard (5. Sep 2007)

Nimm einfach ein TreeSet, das ist automatisch sortiert.


----------



## NaBoun (5. Sep 2007)

des sortieren geht natürlich auch mit bubblesort aber unser lehrer will dass eben jede eingabe sortiert dem array hinzugefügt wird


----------



## Wildcard (5. Sep 2007)

Solange durch das Array iterieren bis du die passende Stelle gefunden hast.
< und > sind deine Freunde.


----------



## Marco13 (5. Sep 2007)

Ja, manchmal geht es nur darum, eine Aufgabe zu erfüllen. Unabhängig von Sinn oder Unsinn. Aber poste mal, was du bisher gemacht hast, und sag, was nicht funktioniert.


----------



## NaBoun (5. Sep 2007)

ich versteh deinen ersten satz net


----------



## NaBoun (5. Sep 2007)

```
import herdt_util.*;
import java.io.*;

public class nr_5_Array_JAVAA029 {

  public static void main(String[] args) {
     int anzahl = 10;
     int temp  = 0;
     int k = 1;
     
     int[] zahlen = new int[anzahl+1];
     String[] text = new String[anzahl+1];
     
     System.out.println("(1) Integerzahlen");
     System.out.println("(2) Strings");
     
     int eing = StdInput.readInt("");
     
     if (eing == 1){
      for (int i = 0; i < anzahl; i++){
         zahlen[i] = StdInput.readInt(i+". Eingabe");
        // hier muss jetzt der algorithmus hin
      }

     
    // BubbleSort des will mein lehrer nicht
    //  int temp = 0;
    //  for (int i = 0; i < anzahl-1; i++){
    //    for (int j = 0; j < anzahl-i; j++){
    //      if(zahlen[j] > zahlen[j+1]){
    //        temp = zahlen[j];
    //        zahlen[j] = zahlen[j+1];
    //        zahlen[j+1] = temp;
    //      }
    //    }
    //  }

     System.out.println();
      for(int i = 0; i < anzahl; i++){
          System.out.print(" " + zahlen[i] );
      }
      System.out.println();

  }
}
```


----------



## Wildcard (5. Sep 2007)

http://de.wiktionary.org/wiki/iterieren


----------



## NaBoun (5. Sep 2007)

aha kann direkt mal meinem lehrer vorm kopf hauen (muhahahaaha)


----------



## nebulo (5. Sep 2007)

Wenn du davon ausgehst, dass dein Feld immer wenn ein neuer Wert eingefügt wird schon sortiert ist. Dann würde ich mit Intervallschachtelung die Stelle suchen an der der neue Wert eingfügt werden soll. Bei einem Array hast du dann natürlich trotzdem dass Problem, dass alle nachfolgenden Werte um eins nach rechts verschoben werden müssen.


----------



## Wildcard (5. Sep 2007)

Hier ist alles ganz ausführlich erklärt:
http://de.wikipedia.org/wiki/Insertionsort


----------



## NaBoun (5. Sep 2007)

ach so


----------

