Struktura danych

0

mam TPaintBox a na nim rysuje różne rzeczy (linie, texty, punkty). Wszystko to jest odzwierciedleniem pewnego zbioru danych , mianowicie Listy wspolrzednych. I teraz tak chce przechowywac dane o punktach, liniach (potem opcjonalnie krzywych). Zależy mi na bardzo szybkim odczycie danych przy przerysowywaniu szkicu (z wiadomych względów => odrzucam rozwiązanie oparte na bazach danych (z jeszcze kilku innych względów)). Dla szkanej struktury danych musi być zrealizowany b. szybki algorytm wyszukiwania, oraz przechodzenia po wszystkich elementach. Linie chce zapisywać zapisując numer punkt początkowego i końcowego (dobrze ?).

Czy lista dukierunkowa jest tutaj dobra ?
Czy dla numerów punktów (typ = String) jest lepsza metoda wyszukiwania od binarnego (Interpolowane odpada) ?

0
b0bik napisał(a)

Linie chce zapisywać zapisując numer punkt początkowego i końcowego (dobrze ?).

Widze tu pewna redundancje danych. Powinienes to zrobic w ten sposob, ze tworzysz sobie strukture danych odzwierciedlajaca dany punkt i miec w niej wskaznik na kolejny punkt (jesli nie ma kolejnego punktu wskaznik = nil)

b0bik napisał(a)

Czy lista dukierunkowa jest tutaj dobra ?

Na podstawie podanych przez Ciebie informacji wnioskuje ze wystarczy lista jednokierunkowa.

b0bik napisał(a)

Czy dla numerów punktów (typ = String) jest lepsza metoda wyszukiwania od binarnego (Interpolowane odpada) ?

Niezaleznie od typu danych jest lepsza metoda - tablice hashowane.
Powinienes stworzc sobie tablice hashowana w ktorej trzymasz te swoje obiekty w postaci list jednokierunkowych.

1 użytkowników online, w tym zalogowanych: 0, gości: 1