• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Wypisywanie elementów drzewa binarnego

Object Storage Arubacloud
0 głosów
1,140 wizyt
pytanie zadane 17 stycznia 2018 w C i C++ przez k222 Nałogowiec (30,150 p.)
edycja 17 stycznia 2018 przez k222

Cześć, siedzę od pewnego czasu nad problemem jak wypisać elementy drzewa binarnego (w dowolnej kolejności) i w sumie rekurencja w tym przypadku dużo upraszcza, jest to zaledwie kilka linijek, ale czy ma ktoś pomysł jak osiągnąć to samo bez rekurencji?

* drzewo ma postać:

struct drzewo
{
int w;
drzewo *lewy;
drzewo *prawy;
}

więc wskaźniki są tylko na dzieci

2 odpowiedzi

+1 głos
odpowiedź 17 stycznia 2018 przez criss Mędrzec (172,590 p.)
wybrane 17 stycznia 2018 przez k222
 
Najlepsza
+2 głosów
odpowiedź 17 stycznia 2018 przez nik Obywatel (1,640 p.)
Może coś takiego, że wypisujesz lewe dziecko, prawe dziecko węzła i dodajesz węzeł do tablicy węzłów odwiedzonych. Następnie przeskakujesz z aktualnego węzła, na lewe dziecko, i wypisujesz lewą i prawą wartość dzieci. I teraz jeżeli węzeł nie ma już dzieci to wracasz do węzła rodzica (zakładam, że węzeł zna swojego rodzica) i jeżeli wszystkie dzieci węzła rodzica są już w tablicy odwiedzonych, to wracasz do kolejnego rodzica do momentu aż wszystkie dzieci korzenia drzewa będą znajdowały się w tablicy węzłów odwiedzonych. Pominąłem tutaj sprawdzanie czy węzeł jest NULL, ale coś takiego mi się nasunęło. Pewnie jest lepsze rozwiązanie, ale to tak na szybko.
komentarz 17 stycznia 2018 przez k222 Nałogowiec (30,150 p.)

Spoko w sumie, tylko nie dodałem :/ że może drzewo to coś w stylu:

struct drzewo
{
int w;
drzewo *lewy;
drzewo *prawy;
}

więc dziecko nie zna rodzica, 

1
komentarz 17 stycznia 2018 przez draghan VIP (106,230 p.)

więc dziecko nie zna rodzica, 

Wredne życie, smutny los. :<

Podobne pytania

0 głosów
2 odpowiedzi 696 wizyt
pytanie zadane 24 sierpnia 2017 w C i C++ przez Jakub 0 Pasjonat (23,120 p.)
0 głosów
1 odpowiedź 242 wizyt

92,570 zapytań

141,422 odpowiedzi

319,643 komentarzy

61,958 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...