算法导论
文章平均质量分 79
18729572438
这个作者很懒,什么都没留下…
展开
-
最大堆及基于最大堆的最大优先队列
堆也是一类特殊的数据结构 最大堆具有的性质:父节点的值大于子节点的值 在最大堆的类中我们定义了主要函数有:维护最大堆,建立最大堆,利用最大堆进行排序 以下是最大堆类的定义: //name:myMaxHeap.h //最大堆,利用vector存储其中的元素 #ifndef MY_MAX_STACK1_H #define MY_MAX_STACK1_H #include #include原创 2017-11-10 21:35:48 · 419 阅读 · 0 评论 -
最小堆及基于最小堆的最小优先队列
最小堆具有的性质:最小堆的父亲节点比子节点的值小 在最小堆的类中我们定义的函数主要有:维护最小堆、建立最小堆和利用最小堆进行排序 以下是最小堆的定义: //name:myMinHeap.h #ifndef MY_MIN_HEAP_H #define MY_MIN_HEAP_H #include #include using namespace std; using std::vector原创 2017-11-10 21:47:21 · 569 阅读 · 0 评论 -
二叉搜索树
二叉搜索树是一个二叉树来组织的,二叉搜索树父节点的左孩子的关键字不大于它的关键字,父节点的右孩子的关键字不小于父节点的关键字。 二叉树的遍历有前序遍历、中序遍历、后序遍历,其中中序遍历输出的关键字按照从小到大的顺序。 我们定义的二叉搜索树类具有查询关键字、返回最大最小关键字、返回某个节点的前驱和后继、插入和删除二叉树某个节点等功能。 以下是二叉树的类定义: //name:BST.h #if原创 2017-11-10 22:18:37 · 138 阅读 · 0 评论 -
算法导论之栈
栈的结构特点就是先进后出,在一些算法中会用到该数据结构,比如:进行二叉树的层序遍历的时候等。 下面给出栈的代码,代码使用vector存储栈中的元素。 头文件: //name:myStack1.h #ifndef MY_STACK1_H #define MY_STACK1_H #include #include //#define MAX_SIZE_S 1000 using names原创 2017-11-05 21:38:09 · 160 阅读 · 0 评论