随笔分类 - 算法
摘要:请你为 最不经常使用(LFU)缓存算法设计并实现数据结构。 实现 LFUCache 类: LFUCache(int capacity) - 用数据结构的容量 capacity 初始化对象 int get(int key) - 如果键 key 存在于缓存中,则获取键的值,否则返回 -1 。 void
阅读全文
摘要:剑指 Offer 51. 数组中的逆序对 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数。 示例 \(1\): 输入: \([7,5,6,4]\) 输出: \(5\) 思路: 还是权值线段树+离散化,类似LC315的操作从右
阅读全文
摘要:315 给你一个整数数组 \(nums\) ,按要求返回一个新数组 $counts$ 。数组$counts$ 有该性质:\(counts[i]\) 的值是 \(nums[i]\) 右侧小于 \(nums[i]\) 的元素的数量。 输入:\(nums = [5,2,6,1]\) 输出:\([2,1,
阅读全文
摘要:普通平衡树 /*您需要写一种数据结构(可参考题目标题),来维护一些数,其中需要提供以下操作: 1 插入 x 数 2 删除 x数(若有多个相同的数,因只删除一个) 3 查询 x 数的排名(排名定义为比当前数小的数的个数 +1 ) 4 查询排名为 x 的数 5 求 x 的前驱(前驱定义为小于 x,且最大
阅读全文
摘要:695 /* * 给你一个大小为 m x n 的二进制矩阵 grid 。 岛屿 是由一些相邻的 1 (代表土地) 构成的组合,这里的「相邻」要求两个 1 必须在 水平或者竖直的四个方向上 相邻。你可以假设 grid 的四个边缘都被 0(代表水)包围着。 岛屿的面积是岛上值为 1 的单元格的数目。 计
阅读全文
摘要:给定一棵 \(n\) 个节点的树,初始时该树的根为 \(1\) 号节点,每个节点有一个给定的权值。下面依次进行$m$个操作,操作分为如下五种类型: 换根:将一个指定的节点设置为树的新根。 修改路径权值:给定两个节点,将这两个节点间路径上的所有节点权值(含这两个节点)增加一个给定的值。 修改子树权值:
阅读全文

浙公网安备 33010602011771号