Ich suche eine C-Bibliothek mit gängigen wiederverwendbaren Datenstrukturen wie verknüpften Listen, Hash-Tabellen usw. So etwas wie die Quelle, die Kyle Loudon mit Mastering-Algorithmen mit C (Taschenbuch) verteilt hat .
Ich suche eine C-Bibliothek mit gängigen wiederverwendbaren Datenstrukturen wie verknüpften Listen, Hash-Tabellen usw. So etwas wie die Quelle, die Kyle Loudon mit Mastering-Algorithmen mit C (Taschenbuch) verteilt hat .
Antworten:
BSD queue.h hat:
BSD tree.h hat:
Weitere Informationen finden Sie in den Manpages zu Warteschlange (3) und Baum (3) . Ich mag sie wirklich, weil sie reine C-Makros ohne Abhängigkeiten sind (nicht einmal libc). Mit der BSD-Lizenz müssen Sie sich außerdem keine Gedanken über Unternehmensbeschränkungen mit GPL machen.
gnulib , die Gnu-Portabilitätsbibliothek.
Es wird als Quellcode verteilt. Diese Liste stammt aus der Modulliste , die eine TONNE anderer Dinge enthält. Ein interessantes ist "c-stack: Stapelüberlaufbehandlung, die zum Beenden des Programms führt."
SGLIB ist eine ausgezeichnete generische Datenstrukturbibliothek. Die Bibliothek bietet derzeit generische Implementierungen für:
Sortieren von Arrays
Verknüpfte Listen
Sortierte verknüpfte Listen
Doppelte verknüpfte Listen
Rot-Schwarz-Bäume-
Hash-Container
Es ist sehr schnell, schneller als glib. Es ist von der Standardvorlagenbibliothek inspiriert. Hier herunterladen
Eine andere Lösung ist die Attraktive Chaos-Software . C-
Makrobibliothek : kbtree.h: Effiziente B-Baum-Bibliothek in C.
khash.h: Schnelle und leichte Hash-Tabellenbibliothek in C.
kvec.h: Einfacher Vektorcontainer in C.
Sglib und Attractive Chaos Software sind C-Makrobibliothek. Die Verwendung von void * zum Implementieren generischer Container in C kann ineffizient sein. C-Makros ahmen die C ++ - Vorlage nach und sind genauso effizient wie die C ++ - Vorlage
Die GDSL-Bibliothek ist möglicherweise eine gute Sache:
AT & T Software - Tools .