Czy Cocoa Touch posiada strukturę danych wyszukiwarki drzewo?

głosy
11

Szukałem w to w Google i przeczytać wpis kolekcjach w dokumentacji SDK, a okazało się nic. Czy istnieje BST (którekolwiek z jej wariantów) realizacji dostępne po wyjęciu z pudełka z iOS SDK?

Wydaje się dziwne, że coś tak podstawowe byłyby brakuje poważnej platformy programistycznej. Jest ich realizacja hash prostu magiczne? Albo czy deweloperów zakładają nikt nie zrobi wkładki / usuwa się na rzeczach, które mają zamówienia?

Mogę używać NSSetdo teraz, ponieważ wiem, większość z nas (w tym ja) nie są naprawdę pisanie czegokolwiek z tonami obliczeń na iOS, które potrzebują gwarantowany czas dostępu, ale to wciąż gryząc na mnie.

Utwórz 08/10/2011 o 01:56
źródło użytkownik
W innych językach...                            


4 odpowiedzi

głosy
0

CoreFoundation ma CFBinaryHeap typ można użyć. Nie ma Obj-C otoki dla niego, ale trochę C nie zaszkodzi nikomu.

Odpowiedział 08/10/2011 o 01:59
źródło użytkownik

głosy
6

CFBinaryHeap wygląda całkiem obiecująco i użyteczne, ale to nie może być dokładnie to, co chcesz, tak naprawdę nie jest to drzewo binarne wyszukiwania, ale kupa . Są one podobne, ale nie takie same, więc czuję się Fundacji rdzenia CFTree klasa może być trochę lepiej. Oto opis z uwzględnieniem klasy CFTree:

Użyć CFTree tworzyć struktury hierarchiczne drzewo, które reprezentują organizacje informacji. W takich strukturach, każdy węzeł drzewa ma dokładnie jedno drzewo nadrzędnego (z wyjątkiem korzenia drzewa, który nie ma rodzica) i może mieć wiele dzieci.

Jeśli nie jesteś komfortowe z C (Fundacja Core C, nie Objective-C), można korzystać z biblioteki JKPTree który jest wrapper Objective-C CFTree. Można go pobrać tutaj .

AKTUALIZACJA:

Właśnie znalazłem inną biblioteką nazywa CHDataStructures które upraszcza tworzenie szerokiej gamy struktur danych. Obsługuje następujące struktury danych (i wiele innych te nienotowane):

  • Drzewo AVL
  • Streszczenie binarne drzewo poszukiwań
  • Andersson Drzewo
  • Połączona lista
  • Szukaj Drzewo
  • Drzewo czerwono-czarne
  • niezrównoważony Drzewo
  • Kolejka
  • Sterta

    Można pobrać CHDataStructures tutaj .

Odpowiedział 22/08/2012 o 05:07
źródło użytkownik

głosy
0

Można korzystać std::setz C ++ biblioteki standardowej, jeśli nazwa pliku z .mmrozszerzeniem (Objective-C ++ tryb).

Odpowiedział 22/01/2013 o 02:28
źródło użytkownik

głosy
0

To nie jest Cocoa Touch, ale Objective-C GNU zbiory biblioteki ma drzewo czerwono-czarne i abstrakcyjne drzewo binarne , a także kilka innych niż drzewa zbiorów rzeczy.

Odpowiedział 26/02/2015 o 02:29
źródło użytkownik

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more