Article View: pl.comp.lang.c
Article #540Re: rekurencja a pamiec ?
From: Krzysztof Swiatkowski
Date: Thu, 08 Jan 1998 22:54
Date: Thu, 08 Jan 1998 22:54
41 lines
2582 bytes
2582 bytes
On 8 Jan 1998 15:51:38 GMT, in pl.comp.lang.c Robert Maron <robmar@domek.slodki.domek> wrote: >Krzysztof: [pl.comp.lang.c: Wed, 07 Jan 1998 22:23:56 +0100] >:>Nieprawda! Algorytm nierekurencyjny jest bardzo prosty! Oczywiście >:>musi być to algorytm z powrotami, ale nie mysi być rekurencyjny. >: Nie musi, niezbyt oszczędny pamięciowo i czasowo algorytm rozwiązywania >: labiryntu, określany mianem "wypalania stepu" polega na stworzeniu tablicy > >no wlasnie, ten algorytm jest bardzo kosztowny... > >czas ma tragiczny (kwadrat zamiast liniowego - do powierzchni labiryntu); >jesli labirynt jest np. 100x100 to zamiast 10tys krokow (pare sekund) masz >100mln krokow (pare dni...) :-))). Można go bardzo drastycznie zoptymalizować tworząc dwie listy, pierwsza w której będą właśnie sprawdzane pozycje na labiryncie, i druga do której są zapisywane pozycje do sprawdzenia w następnym kroku. Rozmiar żadnej z list nie przekroczy max ilości ścieżek. Algorytm zaczniemy wpisaniem położenia wejścia do pierwszej listy i dalej lecimy tak jak poprzednio opisałem, sądze że byłoby to szybsze od algorytmu z powrotami. Choć nadal jest to kwestia tablicy, ale dla niedużych labiryntów (powierzchnia poniżej 65530 :-) ) to i tak jest tylko troszkę więcej niż potrzeba na przechowanie opisu labiryntu. Przy tej wersji labiryntu warto przyjąc wejscie jako 0x0001. Hobbit > >niech on zrobi ten wariant z kolejka... max rozmiar kolejki to obwod >planszy; A może lepiej nie :-) Hobbit -- -------------------------------------| Krzysztof Swiatkowski - Lodz, Poland | replying cut bezspam from my address e-Mail: hobbit@dom.vr.pl.bezspam | odpowiadajac usun bezspam z adresu "Rzeczywistosc jest dla tych biedakow, ktorzy nie radza sobie z fikcja"
Technical Details
Message-ID:
<34b85333.7238747@news.nask.org.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!news.icm.edu.pl!news.nask.pl!not-for-mailReferences:
<01bd189a$8c52aaa0$LocalHost@suseu> <68ol25$qff$1@domek.slodki.domek> <01bd1971$50cc3140$48fa74c3@suseu> <68pdoh$dct$1@domek.slodki.domek> <01bd1a67$beae75a0$08fa74c3@suseu> <68t6g2$cgm@zeus.polsl.gliwice.pl> <34b3b199.68163@news.nask.org.pl> <692sma$1jp$1@domek.slodki.domek>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!news.icm.edu.pl!news.nask.pl!not-for-mail From: hobbit@dom.vr.pl.bezspam (Krzysztof Swiatkowski) Newsgroups: pl.comp.lang.c Subject: Re: rekurencja a pamiec ? Date: Thu, 08 Jan 1998 23:54:04 +0100 Organization: Bag End Lines: 41 Message-ID: <34b85333.7238747@news.nask.org.pl> References: <01bd189a$8c52aaa0$LocalHost@suseu> <68ol25$qff$1@domek.slodki.domek> <01bd1971$50cc3140$48fa74c3@suseu> <68pdoh$dct$1@domek.slodki.domek> <01bd1a67$beae75a0$08fa74c3@suseu> <68t6g2$cgm@zeus.polsl.gliwice.pl> <34b3b199.68163@news.nask.org.pl> <692sma$1jp$1@domek.slodki.domek> NNTP-Posting-Host: pmone232.lodz.pdi.net MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit