关注公众号,一起交流,微信搜一搜: 潜行前行 什么是跳跃链表 开发时经常使用的平衡数据结构有B数、红黑数,AVL数。但是如果让你实现其中一种,很难,实现起来费时间。而跳跃链表一种基于链表数组实现的快速查找数据结构,目前开源软件 Redis 和 LevelDB 都有用到它。它的效率和红黑树以及 AV
跳跃表 思想不再赘述,直接贴代码: SkipListNode.java package com.kuber.algorithmtest.skiplist; public class SkipListNode <T>{ private int key; private T value; public SkipListNode<T> up, down, left, right; // 上下左右 四个指针 public static
# 学习记录 || Coding_Record # # LRU 比较常见的页面置换算法。*leetcode 146 # 个人简易实现(Java) 1 import java.util.HashMap; 2 3 4 class LRUCache { 5 6 public static class Node{ 7 public Object val; 8 public Object key; 9
跳跃表 跳跃表的引入 无论是数组还是链表在插入新数据的时候,都会存在性能问题。排好序的数据,如果使用数组,插入新数据的方式如下: 如果要插入数据3,首先要知道这个数据应该插入的位置。使用二分查找可以最快定位,这一步时间复杂度是O(logN)。插入过程中,原数组中所有大于3的商