【发布时间】:2010-12-21 14:57:09
【问题描述】:
我正在寻找 C 语言(Windows 平台)中经过试验和测试的标准库,它实现了堆栈、队列、树等数据结构。
我希望附带一个源代码。自己写一个库是可能的;但是,我觉得选择一些行业标准实现可能会更好,这些实现可能会经过优化且错误更少。
编译器是 Visual Studio 2005/2008。
【问题讨论】:
标签: c windows data-structures
我正在寻找 C 语言(Windows 平台)中经过试验和测试的标准库,它实现了堆栈、队列、树等数据结构。
我希望附带一个源代码。自己写一个库是可能的;但是,我觉得选择一些行业标准实现可能会更好,这些实现可能会经过优化且错误更少。
编译器是 Visual Studio 2005/2008。
【问题讨论】:
标签: c windows data-structures
【讨论】:
【讨论】:
查看cbase。如果许可是您关心的问题,它的 LGPL(大多数其他库都是 GPL)。
我唯一的意见是它需要 C99 或 GCC。它使用不兼容 C89 的可变参数宏。在VC2005/2008下应该可以正常编译。
cbase 是一个包含有用函数的 C 库,可简化 System V UNIX 上的系统软件开发。该库包括用于内存管理、字符串解析、文件系统遍历、子进程执行、I/O 的例程,以及常见数据结构(如链表、哈希表、堆栈和队列)的实现。该库还包括一个到 Berkeley 套接字的高级接口,以及一个调度程序的实现,该调度程序的功能与 cron 守护程序的功能非常相似。注意:cbase 以前称为 CFL。
【讨论】:
你检查过 qLibc 吗?它是一个开源的 C 实现,提供各种类型的数据结构,如哈希表、链表、队列、堆栈......
截至今天,从它的网站上我看到它具有以下功能集:
在每个容器实现中,在代码顶部清楚地解释了内部数据结构。因此,了解实施思路会对您有所帮助。
代码可以在https://github.com/wolkykim/qlibc找到
希望这会有所帮助。 (如果这有帮助,请投票,我需要一些积分。谢谢:)
【讨论】:
你可能想看看http://www.liblfds.org/
【讨论】: