摘要:
0 课程地址 https://coding.imooc.com/lesson/207.html#mid=13709 1 重点关注 1.1 使用二叉树实现映射Map 详见3.1用二叉树实现映射Map 2 课程内容 3 Coding 3.1 使用二叉树实现映射Map 需求 使用二叉树实现的映射统计 傲慢 阅读全文
摘要:
0 课程地址 https://coding.imooc.com/lesson/207.html#mid=13708 1 重点关注 1.1 使用链表实现映射Map 详见3.1用链表实现映射Map 2 课程内容 3 Coding 3.1 使用链表实现映射Map 需求 使用链表实现的映射统计 傲慢与偏见 阅读全文
摘要:
0 课程地址 https://coding.imooc.com/lesson/207.html#mid=13707 1 重点关注 1.1 映射定义 存储键值数据对的数据结构,根据键寻找值 1.2 映射常用方法 //增加 void add(k,v) //删除 V remove(k); //包含 boo 阅读全文
摘要:
0 课程地址 https://coding.imooc.com/lesson/207.html#mid=13706 1 重点关注 1.1 见代码演练3.1 1.2 有序集合和无序集合 7-1二叉树实现的集合是有序的。有序集合都是基于搜索树实现的,如二叉树,平衡二叉树,红黑树等 7-2链表实现的结合是 阅读全文
摘要:
0 课程地址 https://coding.imooc.com/lesson/207.html#mid=13705 1 重点关注 1.1 结论 使用二叉树实现集合Set性能优于使用链表实现集合Set. 1.2 链表和二叉树实现 集合类复杂度分析 链表的时间复杂度为O(n),n为元素个数, 包含元素, 阅读全文
摘要:
0 课程地址 https://coding.imooc.com/lesson/207.html#mid=13704 1 重点关注 1.1 使用链表实现集合Set 详见3.1用链表实现的集合 2 课程内容 3 Coding 3.1 使用链表实现集合Set 需求 使用链表实现的集合统计 傲慢与偏见 双城 阅读全文
摘要:
0 课程地址 https://coding.imooc.com/lesson/207.html#mid=13703 1 重点关注 1.1 使用二叉树实现集合Set 因为二叉树定义的元素不能重复,所以是实现集合Set的最佳方式 详见3.1用二叉树实现的集合 2 课程内容 2.1 集合Set定义 每个元 阅读全文
摘要:
0 课程地址 https://coding.imooc.com/lesson/207.html#mid=13478 1 重点关注 1.1 待解决的问题(持续深进) 求某个节点的floor和ceil 求某个节点的rank和select(通过size和depth的方法) 支持重复元素的二分搜索树(左边小 阅读全文
摘要:
0 课程地址 https://coding.imooc.com/lesson/207.html#mid=13477 1 重点关注 1.1 前驱和后继 前驱是左子节点最大的要素,一般是左子节点的右子节点的右子节点(无限循环到节点结束)。 后继是右子节点的最小要素,一般是又子节点的左子节点的左子节点(无 阅读全文
摘要:
0 课程地址 https://coding.imooc.com/lesson/207.html#mid=13474 1 重点关注 1.1 删除最小值代码草图 1.2 二分搜索树 查找 删除 最小 最大 元素代码实现 见3.1 2 课程内容 3 Coding 3.1 二分搜索树 删除最小元素和删除最大 阅读全文