Kezdőoldal » Tudományok » Természettudományok » Valahol megtalálható a rendes...

Valahol megtalálható a rendes bizonyítása a Hanoi tornyoknak?

Figyelt kérdés
csak azt látták be, hogy ennyivel meg lehet csinálni, de nem azt, hogy az a minimum.

2017. aug. 29. 23:33
 1/6 anonim ***** válasza:
2017. aug. 30. 06:42
Hasznos számodra ez a válasz?
 2/6 A kérdező kommentje:
ez ugyanaz a megoldás, nem helyes! egy megoldást ad, de nem bizonyítja, nem is foglalkozik vele, hogy minimális-e! bár azt mondja, hogy tn legyen a minimális, de semmit nem mond a bizonyítás során a minimalitásról
2017. aug. 30. 13:51
 3/6 anonim ***** válasza:
100%

A Hanoi torony megoldásához legalább 2^n - 1 lépés szükséges (ahol n a korongok száma).


Bizonyítás (n szerinti teljes indukcióval):


n = 1 esetben legalább 2^1 - 1 = 2 - 1 = 1 lépésre van szükségünk. Ez igaz, mivel a balszélső rúdról azt az egy korongot át kell raknunk a jobbszélsőre, ami nem történhet meg 0 lépésben.


Tegyük fel, hogy tetszőleges (n-1)-re igaz az állítás. Azt kell igazolnunk, hogy ekkor igaz n-re is.


A szabályok alapján egyszerre csak egy korongot mozgathatunk, valamint nagyobb korong nem kerülhet kisebb fölé. Ez azt jelenti, hogy a legnagyobb korong csak legalul lehet, és csak úgy tudjuk elmozgatni, hogy amelyik rúdról mozgatjuk, csak ez a korong van, és ahova tesszük nincs korong. Mivel három rúd van, ebből következik, hogy a legnagyobb mozgatásakor az összes többi korong egy rúdon van.


A lépésszám szempontjából lényegtelen, hogy melyik rúdról melyik rúdra pakolunk, ugyanis a rudak szerepét felcserélve az eredeti problémához jutunk.


Tetszőleges n számú korongot szétválaszthatunk úgy, hogy vesszük a legnagyobbat és az összes többi n - 1 darabot.


Ahhoz, hogy a legnagyobb korongot elmozgathassuk, az indukciós feltevésünk szerint legalább 2^(n-1) - 1 lépésre szükségünk van, mert az n-1 korongot le kell venni róla. Ugyanígy ha a legnagyobb korongon nincs másik, ahhoz hogy a többit rárakhassuk szintén 2^(n-1) - 1 számú lépés kell. Ugyanakkor a legnagyobb korongot is mozgatnunk kell, ami legalább 1 lépés. Ez összesen legalább


[2^(n-1) -1] + [2^(n-1) -1] + 1 =

2^(n-1) -1 + 2^(n-1) -1 + 1 =

2^(n-1) + 2^(n-1) -1 =

2*2^(n-1) -1 =


2^n - 1


lépés. Éppen ezt kellett bizonyítani.

2017. aug. 30. 13:52
Hasznos számodra ez a válasz?
 4/6 anonim ***** válasza:
lehet, hogy n = 2 re is kéne igazolni, mert egy korong nem osztható ketté plusz n-1 = 1-1 = 0-ra nincs is értelme a korongok számának. ebben az esetben 2-re igaz, mert az továbbra is fennáll, hogy az alsót csak úgy lehet elmozdítani, ha levesszük róla ami rajta van (1 lépés), amit levettünk vissza is kell a végén tenni (2 lépés) és az alsót is át kell rakni máshova (3 lépés). [n = 2 -> 2^n - 1 = 2^2 - 1 = 4 - 1 = 3]
2017. aug. 30. 15:15
Hasznos számodra ez a válasz?
 5/6 A kérdező kommentje:
köszi szépen
2017. aug. 30. 16:24
 6/6 anonim ***** válasza:
Nem kell külön megnézni, csak nem n-1-ig teszed fel, hogy igaz a feltevés, hanem n-ig, és n+1-re nézed meg, hogy mi a helyzet.
2017. aug. 31. 13:01
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!