:PI-BLUEJ: Suchen in Listen, Einfügen, SortierenSynopsis: Durchsuchen von Liste
|
Eine Methode Merker.kennstDu(n: GZ):Text soll folgendes Verhalten zeigen:
|
public class Merker{
int zahl[] = new int[3];
int eFindex = 0; // erster freier Index
String kennstDu(int n){
}
}
|
Entwickeln Sie die Methode und ein Struktogramm. Lösung...
Wie viele Vergleiche müssen bei 50 Einträgen durchschnittlich getätigt werden? Diskutieren Sie ihren Ansatz.
Um den Aufwand zu messen machen wir ein Experiment. 100 zufällige Zahlen im Bereich 1..n werden erzeugt und gemerkt, dabei wird die Anzahl der Vergleiche bei der Suche gemessen. Drei Verfahren sollen Verglichen werden: Quelltext
Analysieren Sie die Effizienz der Verfahren und machen sich mit den Prinzipien vertraut.
void bubbleSort(){
boolean unordnung;
int i=1,k, temp;
do{
unordnung = false; // wir gehen von Ordnung aus
for (k= zahl.length-1; k>=i; k--){
if (zahl[k-1]>zahl[k]){ // wenn es nicht ordentlich ist,
temp=zahl[k]; // wird getauscht
zahl[k]=zahl[k-1];
zahl[k-1]=temp;
unordnung = true;
}
}
i++;
}while (unordnung); // wiederhole solange noch getauscht werden muss
}
|
![]() |