堆
_kirakira_
一边失去自我,一边找到自我。
展开
-
No40.最大堆实现优先级队列纯代码
最大堆优先队列满二叉树出队纯代码:(注意:堆的根结点是优先级最高的元素,要想取出优先级第二的元素,需要先移除优先级最高的元素,即removefirst(),出队)下面是最大堆的数据结构#pragma once#include<assert.h>#include<vector>using namespace std;template <ty...原创 2019-12-17 20:40:56 · 125 阅读 · 0 评论 -
No39. 二叉树总结
文章目录1.定义2.名词区分3.一些定理和结论4.遍历(1)由中根遍历和先根遍历确定树的唯一形态5.二叉树的应用6.Reference1.定义1.二叉树:一颗二叉树由结点的有限集合组成,这个集合或者为空,或者由一个根结点及两颗不相交的二叉树组成。注意:左右子树不相交,说明它们没有公共的节点,公共的节点意思是数值相同,指针域也相同。2.满二叉树:满二叉树的每一个结点或者是一个分支结点(非叶结...原创 2019-12-17 16:25:56 · 317 阅读 · 0 评论 -
单源最短路径问题(Dijkstra算法)
一、介绍算法描述二、实战(图片来源未知)求上图从Start到Destination的最短路径·python解法INF = 1e10 # 无限大node_number = 16 # node的数目route_length = [ # node节点间的距离矩阵[INF, 4, INF, 2, INF, INF, 3, INF, INF, INF, ...原创 2019-12-03 20:05:21 · 688 阅读 · 0 评论 -
利用最小堆创建Huffman树代码(C++)
#include"heap.h"#include<time.h>#include<iostream>using namespace std;//Huffman tree node abstract base classtemplate<typename E> class HuffNode {public: virtual ~HuffNode(){...原创 2019-09-25 23:46:55 · 854 阅读 · 2 评论