연결된 목록, 해시 테이블 등과 같은 일반적인 재사용 가능한 데이터 구조를 가진 C 라이브러리를 찾고 있습니다. Kyle Loudon의 Mastering Algorithms with C (Paperback)와 함께 배포 된 소스와 같은 것 입니다.
연결된 목록, 해시 테이블 등과 같은 일반적인 재사용 가능한 데이터 구조를 가진 C 라이브러리를 찾고 있습니다. Kyle Loudon의 Mastering Algorithms with C (Paperback)와 함께 배포 된 소스와 같은 것 입니다.
답변:
gnu 이식성 라이브러리 인 gnulib
소스 코드로 배포됩니다. 이 목록은 다른 것들의 TON을 포함하는 모듈 목록 에서 가져온 것입니다. 한 가지 흥미로운 점은 "c-stack : 스택 오버플로 처리로 인해 프로그램 종료"입니다.
SGLIB 는 우수한 일반 데이터 구조 라이브러리입니다. 라이브러리는 현재 다음과 같은 일반적인 구현을 제공합니다.
배열 정렬
연결 목록
정렬 연결 목록
이중 연결 목록
빨간색-검정 트리
해시 컨테이너
glib보다 빠르고 빠릅니다. 표준 템플릿 라이브러리에서 영감을 얻었습니다. 여기에서 다운로드
또 다른 해결책은 매력적인 카오스 소프트웨어 입니다. C 매크로 라이브러리 :
kbtree.h : C의 효율적인 B- 트리 라이브러리.
khash.h : C의 빠르고 가벼운 해시 테이블 라이브러리.
kvec.h : C의 간단한 벡터 컨테이너.
Sglib 및 매력적인 카오스 소프트웨어는 C 매크로 라이브러리입니다. C에서 제네릭 컨테이너를 구현하기 위해 void *를 사용하는 것은 비효율적 일 수 있습니다. C 매크로는 C ++ 템플릿을 모방하고 C ++ 템플릿만큼 효율적입니다.
GDSL 라이브러리는 다음과 같이 고려하는 것이 좋습니다.