Věž Hanoi
Věž Hanoi (také volal Věže Hanoi) je matematická hra nebo hádanka. To sestává ze tří věšáků a množství disků různých velikostí, které mohou obrábět na nějakém věšáku. Hádanka začíná disky úhledně nacpaný v pořadí velikosti na jednom věšáku, nejmenší nahoře, tak dělat konický tvar.
| Věže Hanoi (fotka EvH) ' ' |
Předmět hry má pohybovat celou hromadou k dalšímu věšáku, dodržovat následující pravidla:
- jen jeden disk může být dojatý v době
- disk může jen být umístěn na větším disku (to nemusí být přilehlá velikost, ačkoli: nejmenší disk může sedět přímo na největším disku)
| Tabulka s obsahem |
| 1 jak řešit to 2 vysvětlení algoritmu 3 algoritmus praktické zkoušky 4 původy 5 aplikací 6 vnějšího spojení |
Většina hračkových verzí hádanky má 8 disků. Hra vypadá nemožná k nováčkovi, přesto je rozpustitelný s jednoduchý algoritmus:
- označit věšáky, B, C -- tyto popisky mohou pohybovat se u různých kroků
- nechaný n být úplné množství disků
- počítat disky od 1 (nejmenší, nejvyšší) k n (největší, bottommost)
Pohybovat se n disky od věšáku k věšáku B:
- pohyb n-1 disky od k C. toto opustí disk # n osamocený na věšáku
- disk pohybu # n od k B
- pohyb n-1 disky od C k B tak oni sedí na disku # n
Více člověka-čitelná verze stejného algoritmu následuje:
- disk pohybu 1 k věšáku B
- disk pohybu 2 k věšáku C
- disk pohybu 1 od B k C, tak to sedí na 2
- disk pohybu 3 k věšáku B
- opakovat první 3 kroky nahoře pohybovat se 1 a 2 sedět na vrcholu 3
Střídavě disk pohybu 1 a jeden z větších disků. Jestliže dva větších disků být dostupný, vždy pohybovat tím menším na větší. Když vy se pohybujete zvláštní-počítal disk, vždy pohybovat tím jeden věšák clockwise; když vy se pohybujete dokonce-počítal disk, vždy pohybovat tím jeden counterclockwise věšáku.
V zášti jednoduchosti algoritmů, nejkratší způsob, jak vyřešit problém s n disky bere 2n- 1 pohyby. To není známé obecně kolik pohybů je vyžadováno vyřešit hádanku když tam být více než 3 věšáky, ačkoli to by mělo brát méně nebo se rovnat krokům než 2n- 1 pohyby. (pro poněkud intuitivní důvody: 3-řešení věšáku může být používáno pro více-než-tři-hry věšáku jestliže jeden pouze “zamítne” jiné věšáky.)
Věž Hanoi je problém často učil programování začátku. Ilustrovaná verze této hádanky je programována do emacs editora, zpřístupňovaný tím, že píše M-x hanoi.
Hádanka byla vynalezena francouzským matematikem Edouard Lucas v 1883. Tam je legenda o Hindském chrámu jehož kněží byli stále zaneprázdnění pohybováním soubor 64 disků shodovat se k pravidlům věže Hanoi hádanky. Shodovat se k legendě, svět by skončil, když kněží dokončili jejich práci. Hádanka je proto také známá jako věž Brahma hádanky. To není jasné zda Lucas vynalézal tuto legendu nebo byl inspirován tím.
Interestingly, jestliže legenda byla pravdivá, a jestliže kněží byli schopní k diskům pohybu v poměru 1 za sekundu používat nejmenší množství pohybů, to by vzalo kněze 264 - 1 nebo hrubě 1.8 × 1019 sekundy dokončit hádanku. Toto je ekvivalentní k asi 580,000,000,000 rokům, který je více než odhadovaný věk vesmíru.
Dvě strany o původech na hádance:
A další jávská simulace s dalšími odkazy:Aplikace
Věž Hanoi je často používána v psychologickém průzkumu na problém platit. Tam dělat existovat také varianty této úlohy volaly Towera Londýna pro diagnózu neuropsychological a léčbu výkonných funkcí.