![]() ![]() |
Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 25 Pomógł: 0 Dołączył: 15.01.2008 Skąd: Warszawa Ostrzeżenie: (0%)
|
Witajcie.
Próbuję rozwiązać swój problem dotyczący efektu rekurencji bez rekurencji, a to z powodu ograniczeń PHP co do rekurencji do 100 poziomu. Moim celem jest wygenerowanie tabelki tabelek, które składają się na strukturę jak w linku poniżej, bez ograniczeń co do zagłębienia, jedyne ograniczenie, które akceptuję, to limit pamięci RAM komputera (HTML w przeglądarce). Efekt jaki chcę uzyskać (bez zagłębienia): http://sanneo.nazwa.pl/_tmp/tabela1.html Drugi poziom zagłębienia i kolejne: http://sanneo.nazwa.pl/_tmp/tabela2.html http://sanneo.nazwa.pl/_tmp/tabela3.html http://sanneo.nazwa.pl/_tmp/tabela4.html Próbuję już od wielu godzin, ale bez rezultatu. Proszę o pomoc. Pozdrawiam. Mariusz (sanneo) Ten post edytował sanneo 11.01.2012, 22:18:02 |
|
|
|
Post
#2
|
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów |
Cytat Próbuję rozwiązać swój problem dotyczący efektu rekurencji bez rekurencji, a to z powodu ograniczeń PHP co do rekurencji do 100 poziomu. Możesz zwiększyć limit. [; A iteracyjnie, to przychodzi mi do głowy potęgowanie maksymalnej wartości licznika; dla uproszczenia zrobię kolumnami. Niestety, później musisz ręcznie modyfikować colspan dla wyższych poziomów: Kod pętla dla wierszy(a=0;a<max;a++) pętla dla kolumn(b=0;b<a^2;b++) I to w sumie wszystko; potem idziesz od dołu i odwrotnie colspana zwiększasz. [; |
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 2 178 Pomógł: 596 Dołączył: 25.09.2009 Skąd: Piwniczna-Zdrój Ostrzeżenie: (0%)
|
Może jakoś tak:
Tutaj użyłem pętli for i 15 iteracji,bo na tyle pozwolił mi mój PC. EDIT: Poprawione co nieco. Ten post edytował mortus 12.01.2012, 00:26:22 |
|
|
|
Post
#4
|
|
|
Grupa: Zarejestrowani Postów: 260 Pomógł: 14 Dołączył: 8.09.2011 Ostrzeżenie: (0%)
|
Ew jak sobie lubisz komplikowac zycie to tak :
sztuczna rekurencja zrobiona na skokach GOTO dodanych w 5.3. to akurat zamienia drzewo dom na kod html. $objectsStack[] to stos. z czytelnoscia kodu nie ma to nic wspolnego (IMG:style_emoticons/default/biggrin.gif) ale jest szybsze niz natywna rekurencja nawet. |
|
|
|
Post
#5
|
|
|
Grupa: Zarejestrowani Postów: 25 Pomógł: 0 Dołączył: 15.01.2008 Skąd: Warszawa Ostrzeżenie: (0%)
|
Witajcie.
Dzięki za podpowiedzi, ale to nie zadziała w moim przypadku. Z propozycji erix, nie mogę skorzystać, propozycja mortus, powoduje zajęcie pamięci PHP, propozycja Orzeszekk jest wycięta z jakiejś klasy, ale chyba ta klasa służy do czegoś innego. Mimo to, poczyniłem kolejne "postępy". Aby tabelka została wygenerowana prawidłowo, potrzebuję już tylko utworzyć następujący ciąg cyfr: 1-szy poziom zagłębienia: 0 2-gi poziom zagłębienia: 0, 1, 0 3-ci poziom zagłębienia: 0, 1, 0, 2, 0, 1, 0 4-ty poziom zagłębienia 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0 5-ty poziom zagłębienia: 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0 6-ty poziom zagłębienia: 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0 Funkcja generująca ten ciąg znaków powinna zawierać jeden parametr odnoszący się do poziomu zagłębienia. Proszę o pomoc. Pozdrawiam. Mariusz (sanneo) |
|
|
|
Post
#6
|
|
|
Grupa: Zarejestrowani Postów: 151 Pomógł: 36 Dołączył: 1.02.2011 Skąd: Warszawa Ostrzeżenie: (0%)
|
|
|
|
|
Post
#7
|
|
|
Grupa: Zarejestrowani Postów: 25 Pomógł: 0 Dołączył: 15.01.2008 Skąd: Warszawa Ostrzeżenie: (0%)
|
Witam.
Dzięki za pomoc. Dla zainteresowanych zamieszczam cały kod poniżej. Jeszcze pewnie będę to jakoś optymalizował, ale efekt jest taki jak potrzebuję (IMG:style_emoticons/default/smile.gif) Pozdrawiam. Mariusz (sanneo)
Ten post edytował sanneo 14.01.2012, 21:17:08 |
|
|
|
![]() ![]() |
|
Aktualny czas: 20.12.2025 - 18:27 |