英文新版,书签iPad可用:带标签的“龙书”:编译原理-[英文第二版]
“龙书”——编译原理书籍经典中的经典,就不多介绍了。此电子书来自网络,特别之处在于我给它添加了标签,所以就更棒了。希望各位编译原理爱好者喜欢,这是对本人最大的鼓励! 制作者:熊怀东 邮 箱:xionghuaidong@163.com 日 期:2018年11月6日
Mastering CMake
为数不多的CMake学习资料,已加书签,欢迎下载。
SCons 2.5.0手册
就是官方手册,但加了书签。SCons是比基于Python的构建工具(类似于make,但更灵活,因为依赖规则是用Python语法写的)。
计算二分图最大匹配的Hopcroft-Karp算法-[1973年原始论文, 附翻译的中文版].
A n^2.5 algorithm for maximum matchings in bipartite graphs-[英文版, John E. Hopcroft & Richard M. Karp]
A n^2.5 algorithm for maximum matchings in bipartite graphs-[中文版, John E. Hopcroft & Richard M. Karp]
Hopcroft-Karp是计算二分图最大匹配的最快算法(根据《算法导论》第二版;但维基百科说有理论上更快的算法,不过实际效果不如Hopcroft-Karp,因为实际的图多为稀疏的,更快算法对稠密的图效果会更好)。
算法发表于1973年,附带翻译的中文版。
本人邮箱:xionghuaidong@163.com
郑码-字根码输入法
此PDF文档制作自“http://www.china-e.com.cn/main/zhengma/xz-1.htm”的下载。原始文档各章是分开的,非常不方便;而直接使用阅读器合并所得又有跳页错误。因此我手工合并了各文档,并添加了精美的书签,方便各位郑码爱好者。
红黑树及其绘制
红黑树是重要的数据结构,而其操作又很复杂,如果能够可视化地展示插入与删除过程,则学习起来会容易得多。
为了学习它们,我翻译以下文章(论文)并实现了相应算法,并放到网络上,与说中文的程序爱好者共同进步。
1、红黑树-[英文版, Wikipedia]
2、Tidy Drawings of Trees-[英文版, Charles Wetherell & Alfred Shannon]
3、Tidier Drawings of Trees-[英文版, Edward M. Reingold & John S. Tilford]
压缩包里有英文原文、文章翻译和C#实现的源代码。翻译水平不高,还望多多谅解,欢迎交流。
欢迎复制传播文章翻译,但要保证完整性,并注出处。
C#实现的源代码也可以复制传播,详见源文件注释,使用时也请注明出处。
熊怀东
shoulea@163.com
12:37 2012/8/25
A Fast Memory Allocator -- 快速内存分配器
A Fast Memory Allocator -- 快速内存分配器 v0.3
基于Python obmalloc模块,改变了block与pool的缓存方式,将arena由原来的两种状态明确处理成三种状态——empty、usable、full,使得以统一的方式处理pool与arena(两组函数完全类似,从而也使得我写了两个通用的链表处理函数PREPEND_NODE和POP_NODE),改进后的处理方式使代码更好理解,可读性更好。
参考资料:《Python 源码剖析》陈儒;Python源代码,obmalloc.c。
熊怀东
shoulea@163.com
20:09 2011/10/4
KMP算法与trie搜索树实现
KMP算法与trie树算法实现,以前觉得很不好理解,现在学习了正则表达式、NFA、DFA相关理论,并做了一些实践后,发现好理解多了。
shoulea
16:50 2011-5-20
基本正则表达式实现regex-v1.0
学习编译原理,做一个简单的正则表达式。
----------------------------------------
实现了基本的正则表达式功能,支持基本的运算符:|、连接、*、+、?。
暂不支持转义字符,不过通过修改Scanner可以轻松解决。
随着学习的深入,会加入更多功能。
readme.jpg显示的是龙书上的经典正则表达式示例“(a|b)*abb”的抽象语法树与相应的不确定自动机。
运行runner.py可以先输入一个正则表达式,再输入若干行文本进行搜索测试。
文件夹“C# Version”中的是等价的C#版本,因为有时需要调试,所以做了一个C#的等效版本。
shoulea
18:48 2011-5-15
迷你垃圾回收器mini gc for c
研究tinygc源代码写了一个迷你的保守垃圾回收器,欢迎多多交流。