
数据结构与算法
文章平均质量分 71
Moyuu233
致力于成为一名优秀的代码搬运工
展开
-
C++中常用的哈希结构
C++中常用的哈希结构 数组 set(集合) map(映射) 以下主要谈谈set和map set 集合 底层实现 是否有序 数值是否可以重复 能否改变数值 查询效率 增删效率 set 红黑树 有序 否 否 O(logn)..原创 2021-03-01 20:10:19 · 390 阅读 · 0 评论 -
散列表
参考文献:《算法导论》第三版 11.1 直接寻址表 eg:数组 用一个数组,或称为直接寻址表,记为T[0,m-1]。其中每个位置,或称为槽,对应全域U中的一个关键字。槽K指向集合中的一个关键字为k的元素。如果集合中没有关键字为k的元素,则T[k]=NIL 删除,增加,修改时间复杂度均为o(1) 11.2 散列表 哈希冲突 散列表中的两个关键字可能映射到同一个槽中。我们称这种情形为冲突。 解决冲突的方法 1.通过链接法解决冲突 在链接法中,将散列到同一个槽中的所...原创 2021-03-01 20:06:45 · 322 阅读 · 0 评论 -
二叉树(一)
参考文献:二叉树专题精讲 by代码随想录 二叉树的种类 二叉树的两种主要形式: 满二叉树 完全二叉树 满二叉树 定义:如果一颗二叉树只有度为0的节点和度为2的节点,并且度为0的节点在同一层上,则这课二叉树为满二叉树。 如图所示: 这课树为满二叉树,也可以说深度为k,有2^k-1个节点的二叉树 完全二叉树 定义:在完全二叉树中,除了最底层可能没有填满外,其余每层节点数都达到最大值,并且最下面一层的节点都集中在该层最左边的若干位置。若最底层为第h层,则该层包含1~...原创 2021-03-01 19:56:23 · 328 阅读 · 0 评论