![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构与算法
Mr__Brown
这个作者很懒,什么都没留下…
展开
-
heap(堆)的实现
堆堆数据结构是一种数组对象,它可以被视为一棵完全二叉树结构。堆结构的二叉树存储是最大堆:每个父节点的都大于孩子节点。最小堆:每个父节点的都小于孩子节点。堆的特点:堆顶元素为最值(大堆最大,小堆最小)。具体实现实现一个堆涉及两个算法,分别是向下调整算法AdjustDown(root),和向上调整算法AdjustUp(chaild)。下面开始介绍这两个算法1、AdjustDown(root)作用是将以...原创 2018-03-14 21:16:06 · 328 阅读 · 0 评论 -
BinarySearchTree-二叉搜索树
二叉搜索树的性质:每个节点都有一个作为搜索依据的关键码(key),所有节点的关键码互不相同。左子树上所有节点的关键码(key)都小于根节点的关键码(key)。右子树上所有节点的关键码(key)都大于根节点的关键码(key)。左右子树都是二叉搜索树。非递归bool insert(const T& key)bool Insert(const T& key) { if (_root...原创 2018-03-21 17:22:52 · 200 阅读 · 0 评论 -
Huffman树
Huffman树Huffman树,又称为最优二叉树,是加权路径长度最短的二叉树构建Huffman树选当前权值最小的两个结点,构建一个父亲结点,形成一颗树;该树父亲节点的权值是,左孩子和右孩子权值的和;将构建的父亲节点的权值扔回,和剩余结点做比较,在选两个权值最小的,构成树最终形成一颗树,叫Huffman树树的特点每个节点的权值是,以该节点为根节点的树,中所有叶子节点权值的和权值越小,深度越深(编码...原创 2018-03-21 17:27:25 · 213 阅读 · 0 评论