本项目中的所有算法均来自于《算法导论》第三版
在学习算法导论的过程中,本人经过几次阅读做了两轮笔记之后发现,要想掌握算法的思想必须动手实践。
- 《算法导论》中的算法全部是用伪代码写的,因此大量的语言细节被忽略。比如边界条件的处理
- 在算法转换为代码过程中会对算法有着更深刻的理解
因此在去年底我在电脑上对算法导论的算法用C++实现了一遍。为了更好地促进学习,现在我将这些代码进行了整理(主要是增加了Doxygen
注释,以及利用gooletest
增加了测试代码)
- 文件结构
src\
google_test\ : gooletest框架的两个文件:gtest.h以及gtest_all.c
sort_algorithms\ :所有排序算法
.... :其他算法
doc\ :由doxygen自动生成的文档
Doxyfile :doxygen配置文件
Introduction_to_Algorithms.pro :Qt项目配置文件
- 本项目是利用Qt开发,因此未给出Makefile文件
- 本项目所有算法都是用
C++ Template
实现。 - 本项目所有算法都有测试代码。如快速排序在
quicksort.h
中,快速排序的测试代码在quicksort_test.h
中,二者位于同一目录下 - 本项目所有的命名空间、函数、类以及必要的成员都打上了
doxygen
注释,可以方便的进行文档化
本文档仅用于个人学习目的,未经许可不得用于商业目的,转载请注明出处
email: huaxz1986@163.com