21.11.2013 Aufrufe

Eine Einführung in die Programmiersprache C und die Grundlagen ...

Eine Einführung in die Programmiersprache C und die Grundlagen ...

Eine Einführung in die Programmiersprache C und die Grundlagen ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

<strong>E<strong>in</strong>e</strong> <strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> Informatik <strong>und</strong> <strong>die</strong> <strong>Programmiersprache</strong> C<br />

Aufgabe 27.3: Überlegen Sie sich <strong>die</strong> Vorgehensweise zum Löschen e<strong>in</strong>es beliebigen Elementes<br />

aus der Liste. Sie erhalten e<strong>in</strong>en Zeiger auf das zu löschende Element (Bitte Spezialfälle auch behandeln:<br />

letztes, erstes, e<strong>in</strong>ziges).<br />

27.3.1 Arbeiten mit Listen<br />

Auf Listen können selbstverständlich auch Sortier <strong>und</strong> Suchalgorithmen angewendet werden. Weil<br />

man auf Listenelemente aber ke<strong>in</strong>en wahlfreien, sondern nur sequentiellen Zugriff hat, können nicht<br />

mehr alle Algorithmen effizient angewendet werden.<br />

B<strong>in</strong>äres Suchen ist z.B. nicht möglich, weil man nicht direkt <strong>in</strong> <strong>die</strong> Mitte der Liste zugreifen kann,<br />

<strong>und</strong> auch Sortierverfahren wie Quicksort fallen aus demselben Gr<strong>und</strong> weg. Bubblesort, Straight<br />

Selection <strong>und</strong> Straight Insertion h<strong>in</strong>gegen können gut e<strong>in</strong>gesetzt werden.<br />

Um jedes Element e<strong>in</strong>er Liste zu untersuchen, bietet sich folgende Schlaufe an:<br />

struct Datenelement* Current;<br />

for (Current = Head; Current != NULL; Current = Current->Next) {<br />

/* Hier der Code fuer was auch man immer machen moechte z.B. Ausgabe*/<br />

pr<strong>in</strong>tf("Wert ist %d\n", Current->Wert);<br />

};<br />

Gedruckt am 10.09.2009 14:23:00 Letzte Änderung am: 10. September 2009 Version 2.4.1, I. Oesch 107/147

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!