2012-02-03 64 views
6

Próbuję zaimplementować następny iterator dla kwadrantu. Niestety, nie wydaje mi się, żebym mógł znaleźć jakiekolwiek źródło informacji o traversal w quadtree.Przejście na cztery części

Czy ktoś może wskazać mi właściwy kierunek?

Odpowiedz

3

Łatwym sposobem jest zlinearyzować drzewa. Oczywiście będziesz musiał to zrobić rekurencyjnie, ale stworzysz zestaw wskaźników do węzłów, które chcesz odwiedzić, a następnie utworzysz z niego iterator do przodu.

+0

Tak prosty, dobrze! Jak to się stało, że nie myślałem o zrobieniu tego. Teraz btw, mam do czynienia z problemami z węzłów z jednym z indeksu równy jego rodzica. Wydaje się, że muszę zmienić reguły wstawiania lub coś takiego. Dowolny pomysł? –