PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Lustiges Exklusiv-Oder



Freiheitspirat
29.10.2004, 13:52
Welchen Vorteil hat die folgende Codestrecke gegenüber anderen Programmcodes, die die gleiche Aufgabe erfüllen ?

A = A XOR B
B = A XOR B
A = A XOR B

martin
29.10.2004, 14:12
Hallo,

Vertauschen zweier Variablen ohne Hilfsvariable ???
Grüsse, Martin

DerInder
29.10.2004, 14:18
Hallo,
A und B werden vertauscht. Vorteil man braucht keinen zusätzlichen Speicher (Register).

Freiheitspirat
29.10.2004, 15:10
Richtig, es ist die SCHNELLSTE (Anzahl Prozessortakte) Möglichkeit zwei Variablen (insbesondere Register) zu tauschen, da keine dritte Zwischenvariable benutzt werden muß.

Manf
29.10.2004, 23:51
Ich kann mich erinnern dass in der Informatikvorlesung in Darmstadt vor 26 Jahren, es war die Vorlesung von Prof. Waldschmidt, einmal die Aufgabe gestellt wurde, wie kann man 2 Variable tauschen, ohne eine Dritte zu benutzen.

Zu der Frage wurde damals keine Lösung angegeben und ich habe nicht verstanden, warum sie gestellt wurde. Für eine Vorlesung etwas ungewöhnlich, das war wohl der einzige Grund warum ich es mir gemerkt habe. Es war auch kein vordringliches Anliegen für mich. Ich erinnere mich nur jetzt wieder daran.

Ist das ein irgendwie bekanntes Problem das man kennen sollte?
Wenn nicht, vergiß es, es hat sicher keine tiefere Bedeutung.
Manfred