Data-Structure icon indicating copy to clipboard operation
Data-Structure copied to clipboard

数据结构与算法分析-C++描述(第三版) 学习笔记和部分代码实现

Data-Structure

代码内容

《数据结构与算法分析C++描述拆分》上的代码实现, 按照该书的章节顺序,主要实现书上给出的例子,包括部分课后习题。

文件内容

所有实现均~~计划~~给出.h .cpp文件以及部分用于测试的test.cpp文件

环境

  • Windows 10 & 8.1
  • Visual Studio 2015 with update 3
  • C++ (部分C++11语法)

章节列表

第一章 引论 & 第二章 算法分析

:white_check_mark: 部分课后习题+简单例程

第三章 表、栈和队列

:white_check_mark: Vector和List
:white_check_mark: 链表
:white_check_mark: 栈
:white_check_mark: 队列

第四章 树

:white_check_mark: 二叉查找树
:white_check_mark: AVL树

第五章 散列

:white_check_mark: 哈希表(分离链接法)
:white_check_mark: 哈希表(开放定址法/平方探测)

第六章 优先队列(堆)

:white_check_mark: 二叉堆
:white_check_mark: 左式堆
:white_check_mark: 二项队列

第七章 排序

:white_check_mark: 插入排序
:white_check_mark: 希尔排序
:white_check_mark: 堆排序
:white_check_mark: 归并排序
:white_check_mark: 快速排序
:white_check_mark: 快速选择

第八章 不相交集类

:white_check_mark: 不相交集

第九章 图论算法

:white_large_square: 邻接表(Version 1,2)
:white_large_square: 拓扑排序(Version 1,2)
:white_large_square: 单源最短路径算法
:white_large_square: 最大网络流
:white_large_square: 最小生成树
:white_large_square: 深度优先搜索
:white_large_square: 双连通性
:white_large_square: 欧拉回路

第十章 算法设计技巧

:white_large_square: 分治算法:最近点问题
:white_large_square: 动态规划:斐波那契数列,递归关系,矩阵乘法顺序,最优搜索二叉树
:white_large_square: 随机化算法:跳表
:white_large_square: 回溯法:收费公路重建,三连棋游戏(带AI)

第十二章 高级数据结构及其实现

:white_large_square: 红黑树:自顶向下插入,自顶向下删除
:white_large_square: AA树
:white_large_square: Treap树
:white_large_square: Kd树
:white_large_square: 配对堆