
刷题
主要是涉及一些在写题或者业务时的算法和数据结构吧
小剑人肖
这个作者很懒,什么都没留下…
展开
-
跳表的简单实现(Java语言)
1. 跳表是什么 一个类似二分搜索的链表结构。结构如下 2. 跳表的作用 它在插入,查找,删除的时间复杂度都是O(logN)级别的。所以经常拿来和红黑树进行对比。相对于红黑树,它的优点: 支持范围查找 实现简单,没有红黑树那么复杂 它的缺点目前似乎是没有特别成熟可靠的实现方案,局限于笔者的知识,它也就在redis的zset实现上使用了。 3. Java实现 public class SkipList { // 最大层数 private static final int DEFAUL原创 2022-03-07 15:37:41 · 673 阅读 · 0 评论 -
一种简明的迭代法(中序,前序,后序)遍历二叉树----Java实现
说明 该方法是henry首创的,我给自己做个记录 一般的迭代都是各种嵌套循环,但是我介绍的方法是通过给每一个节点添加一个标志(是否被访问过),可以很简单的实现迭代,原作者的想法是额外添加信息,如:flag=0代表未访问过,flag=1代表访问过。但是经过自来火改善,可以通过类型的不同来作为标志。代码就非常简洁了 //以中序遍历为例 public List<Integer> inorderTraversal(TreeNode root) { Deque<Object>原创 2021-03-06 14:27:25 · 221 阅读 · 0 评论