Skalierung eines iterativen, bitweisen Algorithmus zur Lösung der Türme von Hanoi mit X-Disks und Y-Towern

8

Ich mag den in dieser Frage erwähnten Algorithmus: "Wie funktioniert das? Weird Towers of Hanoi Solution" Wie funktioniert das? Weird Towers of Hanoi Lösung

Gibt es eine Möglichkeit, diese nicht-rekursive Lösung der Türme von Hanoi zu skalieren, um X-Platten und Y-Türme zu verwenden, wobei die Türme als Stapel dargestellt werden?

    
Robb 27.03.2010, 20:40
quelle

1 Antwort

1

Eine iterative Lösung für den Turm von Hanoi mit Y = 3 Towers und X Discs und kann auf Wikipedia :

Für eine gerade Anzahl von Festplatten:

  • macht den legalen Wechsel zwischen den Pegeln A und B
  • macht den legalen Wechsel zwischen den Pegeln A und C
  • machen Sie den legalen Wechsel zwischen den Pegeln B und C Wiederholen bis zum vollständigen

Für eine ungerade Anzahl von Festplatten:

  • macht den legalen Wechsel zwischen den Pegeln A und C
  • macht den legalen Wechsel zwischen den Pegeln A und B
  • machen Sie den legalen Wechsel zwischen den Pegeln B und C Wiederholen bis zum vollständigen

In jedem Fall werden insgesamt 2 ^ X-1 Züge gemacht. Die Anzahl der Züge mit diesem Algorithmus ist nur minimal für Y = 3 .

Diese Lösung ignoriert die anderen Türme, so dass es mit jedem Y & gt; = 3 und jedem X funktioniert.

  

Obwohl die Drei-Stift-Version a   einfache rekursive Lösung wie beschrieben   oben, die optimale Lösung für die   Turm von Hanoi-Problem mit vier Klammern   (Reve's Puzzle genannt), geschweige denn mehr   Heringe, ist immer noch ein offenes Problem. Dies   ist ein gutes Beispiel dafür, wie einfach   lösbares Problem kann gemacht werden   dramatisch schwieriger durch   etwas lösen eines der Probleme   Einschränkungen.

Zitiert von Wikipedia .

    
Martin Thoma 20.02.2011 11:51
quelle