算法与数据结构
文章平均质量分 72
包括STL里面的容器以及树型结构,哈希,适合有C/C++基础同学一起讨论
Exy-
这个作者很懒,什么都没留下…
展开
-
红黑树(RHTree)的结构与操作#/
红黑树概念红黑树,是一种二叉搜索树,与一般二叉搜索树不同的是在每个结点上增加一个存储位表示结点的颜色,可以是Red或Black。 通过对任何一条从根到叶子的路径上各个结点着色方式的限制,红黑树确保没有一条路径会比其他路径长出俩倍,因而是接近平衡的。性质它不仅仅具有二叉搜索树的特性,还必须满足以下特点:根结点必须是黑色 每个结点不是黑的就是红的 如果一个节点是红色的,则它的两个孩子结点是黑色的 对于每个结点,从该结点到其所有后代叶结点的简单路径上,均 包含相同数目的黑色结点 每...原创 2022-02-22 21:52:41 · 89 阅读 · 0 评论 -
Hash#/(理解,实现与应用)
unordered系列的关联式容器之所以效率比较高,是因为其底层使用了哈希结构哈希概念顺序结构以及平衡树中,元素关键码与其存储位置之间没有对应的关系,因此在查找一个元素时,必须要经 过关键码的多次比较.顺序查找时间复杂度为O(N),平衡树中为树的高度,即O(log2N),搜索的效率取决于搜索过程中元素的比较次数。 理想的搜索方法:可以不经过任何比较,一次直接从表中得到要搜索的元素。 如果构造一种存储结构,通过 某种函数(hashFunc)使元素的存储位置与它的关键码之间能够建立一一映..原创 2022-02-05 20:14:19 · 705 阅读 · 0 评论 -
二叉搜索树(BST)的概念及实现与分析
二叉搜索树概念二叉搜索树又称二叉排序树,它或者是一棵空树,或者是具有以下性质的二叉树: 若它的左子树不为空,则左子树上所有节点的值都小于根节点的值 若它的右子树不为空,则右子树上所有节点的值都大于根节点的值 它的左右子树也分别为二叉搜索树int ar[]={5,3,2,4,8,9,1};BST树的插入如果树为空则直接插入; 如果不为空,则按照二叉搜索树的规则插入.bool Insert(const K& key, const V& value) {原创 2022-01-22 20:19:24 · 329 阅读 · 0 评论