Szukam biblioteki C ze wspólnymi strukturami danych wielokrotnego użytku, takimi jak połączone listy, tabele skrótów itp. Coś w rodzaju źródła dystrybuowanego z algorytmami Mastering z C (Paperback) autorstwa Kyle Loudon .
c
data-structures
Wasyl
źródło
źródło
Odpowiedzi:
BSD queue.h ma:
BSD tree.h posiada:
Szczegółowe informacje można znaleźć na stronach podręcznika queue (3) i tree (3) . Bardzo je lubię, ponieważ są to czyste makra C bez zależności (nawet nie libc). Dodatkowo dzięki licencji BSD nie musisz się martwić o żadne ograniczenia firmy w / GPL.
źródło
Gnome zapewnia do tego doskonałą bibliotekę, zwaną Glib , z wieloma użytecznymi strukturami danych i innymi narzędziami.
źródło
gnulib , biblioteka przenośności GNU .
Jest rozpowszechniany jako kod źródłowy. Ta lista pochodzi z listy modułów , która zawiera TONĘ innych rzeczy. Jednym z interesujących jest „c-stack: obsługa przepełnienia stosu, powodująca zamknięcie programu”.
źródło
SGLIB to doskonała ogólna biblioteka struktur danych. Biblioteka obecnie udostępnia ogólne implementacje dla:
sortowania tablic
list
połączonych posortowanych list
połączonych podwójnie połączonych list
czerwono-czarne drzewa
haszowane kontenery
Jest bardzo szybki, szybszy niż glib. Jest inspirowany biblioteką standardowych szablonów. Pobierz tutaj
Innym rozwiązaniem jest oprogramowanie atrakcyjne Chaos . Biblioteka makr C:
kbtree.h: wydajna biblioteka B-tree w C.
khash.h: szybka i lekka biblioteka tabel skrótów w C.
kvec.h: prosty kontener wektorowy w C.
Oprogramowanie Sglib i Attractive Chaos to biblioteka makr C. Używanie void * do implementacji ogólnych kontenerów w języku C może być nieefektywne. Makra C naśladują szablon C ++ i są tak wydajne jak szablon C ++
źródło
Biblioteka GDSL może być dobrym rozwiązaniem:
http://home.gna.org/gdsl/
źródło
Środowisko wykonawcze Apache Portable.
źródło
CLIB
źródło
Narzędzia programowe AT&T .
źródło