eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingCiekawy problem iteracyjnego zwalniania głębokiego drzewaRe: Ciekawy problem iteracyjnego zwalniania głębokiego drzewa
  • Data: 2017-08-14 17:50:36
    Temat: Re: Ciekawy problem iteracyjnego zwalniania głębokiego drzewa
    Od: "M.M." <m...@g...com> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    On Monday, August 14, 2017 at 5:15:23 PM UTC+2, Borneq wrote:
    > W dniu 14.08.2017 o 16:50, M.M. pisze:
    > > Jak jest ciąg węzłów z jednym potomkiem, to zwalniaj w pętli, gdy
    > > są dwa, to rekurencyjnie - może to wystarczy,
    >
    > To całkiem dobre rozwiązanie,
    Na długich zdegenerowanych odcinkach nie robi rekurencyjnego wywołania,
    może to wystarczy do Twojego zastosowania.

    > ale jak to przedstawić w postaci kodu?

    Bez debugowania tak:
    remove( node ) {
    while( node ) {
    if( node->childCount() > 1 ) {
    foreach( node->childs as child ) {
    remove( child )
    }
    delete node
    } else {
    tmp = node;
    node = node->chils[ numberOneChild ];
    delete node;
    }
    }
    }

    > Może najpierw zamienić połowicznie - rekurencję na iterację z wektorem,
    > po czym ten wektor byłby używany tylko gdy rozgałęzienia?
    Nie wiem, pewnie skomplikowałoby mocno kod. Ja mam po prostu
    wszystko w wektorze, robię clear i cała pamięć zwolniona.

    Pozdrawiam

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: