# CyberDash数据结构开源代码
## 1 简介
### 1.1 配套书籍
通用C++数据结构书籍,如果使用C++模板,那是最好的:-)
### 1.2 代码运行环境
目前在Linux和Mac环境已经测试通过。
**Linux测试环境**
kernel >= 3.10
cmake:3.13
doxygen: 1.9.2
**Mac测试环境**
MAC OS BigSur(11.2.1)
cmake:3.13
doxygen: 1.9.2
### 1.3 代码规范与风格
**代码规范**
Google编码规范,参考文档连接:
https://github.com/zh-google-styleguide/zh-google-styleguide/tree/master/google-cpp-styleguide
**使用STL**
部分代码(例如图)(大量)使用STL, 参考文档或者<C++ Primer>
**C++特性**
考虑很多读者是学生和初学者, 使用C++98
## 2 使用方式
为了方便分类学习, 项目主目录下, 每个目录对应一个独立的项目
### 2.1 编译与运行
git clone https://gitee.com/cyberdash/data-structure-cpp.git
# 进入目录
cd data-structure-cpp/<dir>
# 编译
cmake3 .
make
# 执行程序
./main
## 3 内容简介
**Array: 稀疏矩阵**
**GeneralizedList: 广义表**
**Graph: 图**
矩阵图, 邻接表图, 深度优先, 广度优先, 连通分量, 最小生成树, 最短路径
**LinearList: 线性表**
顺序表, 单链表, 双向链表
**Queue: 队列**
**Search: 搜索**
二叉搜索树, AVL树
**Sort: 排序**
冒泡, 插入, 选择, 堆, 归并, 快速
**Stack: 栈**
**String: 字符串**
BF, KMP
**Tree: 树**
二叉树, 二叉线索树, 哈夫曼树
## 4 Doxygen生成文档
### 4.1 Doxygen配置文件
每个代码目录下的cyber_dash_doxygen_config文件为doxygen的配置文件
### 4.2 Doxygen生成文件
可以使用doxygen命令生成每个测试项目的文档
doxygen cyber_dash_doxygen_config
执行成功之后可以去html目录下打开index.html阅读使用说明
### 4.3 生成PDF文件
doxygen配置文件将GENERATE_LATEX/LATEX_OUTPUT/USE_PDFLATEX/PDF_HYPERLINKS设置为YES
打开latex目录中的refman.tex,
找到"\begin{document}"这一行, 改为
```
\usepackage{CJKutf8}
\begin{document}
\begin{CJK}{UTF8}{gbsn}
```
找到"\end{document}"这一行, 改为
```
\end{CJK}
\end{document}
```
## 5 关于我们
我们是拥有十多年开发经验的开发工程师, 长期就职于各传统与互联网大厂.
目前在做计算机考研相关的内容, 如果想更多了解我们,欢迎关注抖音:cyberdash_yuan
**Y_Dash(元哥)**
用过很多语言, 做过很多项目, 从底层到应用层, 安全/服务/社区/IoT/...
写代码能剪裁kernel, 吹拉谈唱能去欧洲做展会讲解, 从外太空到内XX, 五花八门什么都略懂一些
**G_Dash(磊哥)**
10多年安全/系统工程师, 专注C/Linux/网络/安全, 某互联网基础架构部资深工程师, 元哥身后稳如磐石的男人
**L_Dash**
资深测试开发工程师, 热爱数据结构和算法
## 6 感谢名单
**感谢下列朋友发现代码bug**
LLcu2019205455@163.com 鲁子傲, 1723004698@qq.com 蔡博文, qiaoge77@163.com
## 7 你好有缘人
没有合适的资源?快使用搜索试试~ 我知道了~
数据结构(C++模板实现).zip
共123个文件
h:49个
cpp:37个
txt:15个
5星 · 超过95%的资源 需积分: 0 2 下载量 163 浏览量
2022-10-12
07:50:55
上传
评论 2
收藏 439KB ZIP 举报
温馨提示
数据结构(C++模板实现).zip
资源详情
资源评论
资源推荐
收起资源包目录
数据结构(C++模板实现).zip (123个子文件)
graph_algorithm.cpp 35KB
test.cpp 22KB
test.cpp 22KB
test.cpp 13KB
test.cpp 6KB
test.cpp 5KB
test.cpp 5KB
test.cpp 5KB
test.cpp 4KB
merge_sort.cpp 4KB
test.cpp 4KB
min_heap.cpp 4KB
test.cpp 3KB
huffman_tree.cpp 2KB
min_heap.cpp 2KB
heap_sort.cpp 2KB
main.cpp 2KB
disjoint_set.cpp 2KB
util.cpp 2KB
quick_sort.cpp 1KB
main.cpp 1KB
main.cpp 1002B
main.cpp 957B
main.cpp 876B
select_sort.cpp 726B
insert_sort.cpp 683B
main.cpp 568B
main.cpp 532B
main.cpp 511B
bubble_sort.cpp 499B
main.cpp 471B
main.cpp 453B
main.cpp 402B
main.cpp 372B
main.cpp 343B
main.cpp 319B
main.cpp 294B
cyber_dash_doxygen_config 104KB
cyber_dash_doxygen_config 104KB
cyber_dash_doxygen_config 104KB
cyber_dash_doxygen_config 104KB
cyber_dash_doxygen_config 104KB
cyber_dash_doxygen_config 104KB
cyber_dash_doxygen_config 104KB
cyber_dash_doxygen_config 104KB
cyber_dash_doxygen_config 104KB
queue.dev 1KB
sort.dev 714B
.gitignore 302B
AVL_tree.h 28KB
binary_tree.h 23KB
thread_tree.h 19KB
adjacency_list_graph.h 18KB
test.h 15KB
gen_list.h 15KB
child_sibling_tree.h 14KB
sparse_matrix.h 14KB
cyber_dash_string.h 13KB
matrix_graph.h 13KB
binary_search_tree.h 12KB
seq_list_test.h 10KB
double_link_list.h 10KB
seq_list.h 9KB
link_list.h 9KB
link_queue.h 7KB
link_list_test.h 7KB
double_link_list_test.h 7KB
graph_algorithm.h 6KB
link_stack.h 6KB
graph.h 5KB
min_heap.h 4KB
data_list.h 3KB
sorted_list.h 3KB
gen_list_node.h 2KB
person.h 2KB
seq_list_algorithm.h 2KB
linear_list.h 2KB
search_list.h 1KB
test.h 1KB
queue.h 1KB
stack.h 988B
test.h 918B
disjoint_set.h 902B
test.h 776B
min_heap.h 733B
test.h 722B
huffman_node.h 708B
test.h 690B
min_heap.h 673B
priority_queue.h 608B
sort.h 606B
test.h 591B
huffman_tree.h 579B
test.h 556B
test.h 482B
util.h 482B
test.h 454B
test.h 433B
settings.json 1KB
launch.json 1KB
共 123 条
- 1
- 2
不安分的小女孩
- 粉丝: 9437
- 资源: 2139
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论2