Tanz der Kanten

Tanz der Kanten

Tanz der Kanten ist eine Technik zum effektiven Umgang mit Listen in der Informatik. Sie ermöglicht es auf unkomplizierte Weise, Elemente in Listen zu entfernen oder einzufügen.

Element B wird aus der Liste entfernt.

Zum Beispiel habe das Element B einer Liste den Vorgänger A und den Nachfolger C. Jedes Element habe einen Verweis zu seinem Vorgänger und seinem Nachfolger: Im Falle von B ist A mit B.links und C mit B.rechts erreichbar. Eine typische Operation, um B aus der Liste zu entfernen, ist:


B.links.rechts := B.rechts;
B.rechts.links := B.links;


Das heißt B.links, also A, erhält als Nachfolger das Element, das vorher der Nachfolger seines Nachfolgers war, nämlich C. Entsprechend erhält B.rechts, also C, als Vorgänger A. Von A oder C ausgehend ist nun B nicht mehr zu erreichen. B ist aus der Liste entfernt worden.

Die Idee hinter dem Tanz der Kanten ist nun, dass in B nach dem Entfernen immer noch die Informationen gespeichert sind, um das Entfernen rückgängig zu machen:


B.links.rechts := B;
B.rechts.links := B;


Besonders praktisch ist dieses Prinzip für Backtracking-Algorithmen, die nach dem Prinzip von Versuch und Irrtum einen bestimmten Zustand herstellen, und diesen wieder rückgängig machen müssen, falls er nicht die Lösung des Problems ist.

Diese Technik wurde zuerst 1979 von Hirosi Hitotumatu und Kohei Noshita vorgestellt. Ihren Namen verdankt sie Donald Knuth, den der systematische Wechsel der Verweise an einen Tanz erinnerte. Mit ihrer Hilfe kann man mit dem Dancing-Links-Algorithmus das Problem der exakten Überdeckung lösen.

Literatur

  • Hirosi Hitotumatu, Kohei Noshita: A technique for implementing backtrack algorithms and its applications. In: Information Processing Letters. 8, Nr. 4, 1979, S. 174-175.
  • Donald E. Knuth: Dancing links. arXiv:cs/0011047 (Preprint).

Wikimedia Foundation.

Игры ⚽ Нужно сделать НИР?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Ikosaeder — Regelmäßiges Ikosaeder Art der Seitenflächen gleichseitige Dreiecke Anzahl der Flächen 20 Anzahl der Ecken 12 Anzahl der Kanten 30 …   Deutsch Wikipedia

  • Betonkettensäge — Verbrennungsmotorgetriebene Kettensäge im Einsatz Die Kettensäge ist eine mit einem Benzin oder Elektromotor, mit Druckluft (pneumatisch), mit Öldruck (hydraulisch) oder per Hand angetriebene Säge, deren schneidender Teil die Sägekette ist.… …   Deutsch Wikipedia

  • Kettensägen — Verbrennungsmotorgetriebene Kettensäge im Einsatz Die Kettensäge ist eine mit einem Benzin oder Elektromotor, mit Druckluft (pneumatisch), mit Öldruck (hydraulisch) oder per Hand angetriebene Säge, deren schneidender Teil die Sägekette ist.… …   Deutsch Wikipedia

  • Motorkettensäge — Verbrennungsmotorgetriebene Kettensäge im Einsatz Die Kettensäge ist eine mit einem Benzin oder Elektromotor, mit Druckluft (pneumatisch), mit Öldruck (hydraulisch) oder per Hand angetriebene Säge, deren schneidender Teil die Sägekette ist.… …   Deutsch Wikipedia

  • Motorkettensägenführer — Verbrennungsmotorgetriebene Kettensäge im Einsatz Die Kettensäge ist eine mit einem Benzin oder Elektromotor, mit Druckluft (pneumatisch), mit Öldruck (hydraulisch) oder per Hand angetriebene Säge, deren schneidender Teil die Sägekette ist.… …   Deutsch Wikipedia

  • Motorsäge — Verbrennungsmotorgetriebene Kettensäge im Einsatz Die Kettensäge ist eine mit einem Benzin oder Elektromotor, mit Druckluft (pneumatisch), mit Öldruck (hydraulisch) oder per Hand angetriebene Säge, deren schneidender Teil die Sägekette ist.… …   Deutsch Wikipedia

  • Kettensäge — Verbrennungsmotorgetriebene Kettensäge im Einsatz Die Kettensäge ist eine mit einem Benzin oder Elektromotor, mit Druckluft (pneumatisch) oder mit Öldruck (hydraulisch) angetriebene Säge, deren schneidender Teil die Sägekette ist. Häufigste… …   Deutsch Wikipedia

  • Freude — 1. All zeitlich Frewd ist vermischt mit Bitterkeit. – Petri, II, 8. Dän.: All verdslig glæde er kun som i kaalde sygen, en god dag imellem to onde. (Prov. dan., 241.) 2. Alle Freude steckt in der Weinkarte. – Simrock, 11421. Schwerlich hat ein… …   Deutsches Sprichwörter-Lexikon

  • Schwung (Ski) — Der Schwung ist das grundlegende Bewegungsmuster beim Skifahren und Snowboarden, begrenzt auch beim Skilanglauf, und bezeichnet den Bogenwechsel, den der Schneesportler mit seinem Sportgerät fährt. Die Fahrt quer oder schräg zum Hang nennt man… …   Deutsch Wikipedia

  • Zwanzigflach — Das Ikosaeder [ikosaˈeːdər] (nach griech. εἰκοσάεδρον eikosáedron = Zwanzigflächner oder Zwanzigflach) ist einer der fünf platonischen Körper, genauer: ein Polyeder (ein Vielflächner) mit zwanzig (kongr …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”