加载中...
标签详情
堆(优先队列) 分类
  文章标签
排序 197 算法 1 django 64 npm 2 Artifactory 2 Docker 2 CI/CD 4 认证 2 MongoDB 2 mongosh 2 权限 2 系统集合 1 版本兼容 1 环境配置 1 时区 1 date-fns 1 前端 1 Vite 1 JavaScript 5 缓存 1 依赖管理 1 Helm 1 Jenkins 2 DNS 1 Passenger 1 性能 1 故障排查 3 Rails 5 Postfix 2 SMTP 1 邮件 3 竞态条件 1 Ruby 1 ActionMailer 2 数据治理 1 OOM 1 内存 1 性能调优 1 Linux 8 配置管理 1 磁盘清理 1 日志 1 运维 2 Shell 4 超时 1 任务调度 1 源码分析 1 logrotate 1 cron 1 Rancher 1 Kubernetes 1 SSH 2 公钥认证 2 Hexo 6 markdown 4 PostgreSQL 1 数据库 19 热搜榜 1 widget 1 media 1 递归 46 字符串 423 动态规划 335 数组 855 哈希表 303 数学 306 设计 93 字典树 33 数据流 14 树 167 深度优先搜索 213 二叉树 151 广度优先搜索 177 二分查找 146 后缀数组 3 滑动窗口 56 哈希函数 16 滚动哈希 10 矩阵 141 前缀和 58 交互 5 栈 110 回溯 85 贪心 163 双指针 131 位运算 122 状态压缩 26 树状数组 14 线段树 19 堆(优先队列) 82 图 71 双连通分量 1 链表 77 拓扑排序 19 数论 7 最短路 10 二叉搜索树 43 字符串匹配 13 记忆化搜索 30 博弈 18 队列 22 单调队列 6 几何 24 组合数学 13 概率与统计 8 并查集 48 最小生成树 2 强连通分量 2 随机化 14 单调栈 34 分治 44 枚举 22 有序集合 29 扫描线 4 桶排序 8 基数排序 2 计数 55 模拟 63 归并排序 8 欧拉回路 2 双向链表 9 脑筋急转弯 9 Java 17 Google 1 整洁代码 1 重构 1 测试 1 python 1 scrapy 1 面向对象编程 2 设计原则 1 CPU缓存 1 多线程 6 计数排序 5 快速选择 8 迭代器 6 水塘抽样 4 拒绝采样 2 Git 1 设计模式 14 GitLab CI 1 DevOps 1 Typora 1 Markdown 1 Vue 1
剑指 Offer 40-最小的k个数(最小的k个数 LCOF)
原文链接: https://leetcode-cn.com/problems/zui-xiao-de-kge-shu-lcof 中文题目输入整数数组 arr ,找出其中最小的 k 个数。例如,输入4、5、1、6、2、7、3、8这8个数字,则最小的4个数字是1、2、3、4。 示例 1: 输入:arr = [3,2,1], k = 2 输出:[1,2] 或者 [2,1] 示例 2: 输入:arr = [0,1,2,1], k = 1 输出:[0] 限制: 0 <= k <= arr.length <…
2021-12-03
剑指 Offer 49-丑数(丑数 LCOF)
原文链接: https://leetcode-cn.com/problems/chou-shu-lcof 中文题目我们把只包含质因子 2、3 和 5 的数称作丑数(Ugly Number)。求按从小到大的顺序的第 n 个丑数。 示例: 输入: n = 10 输出: 12 解释: 1, 2, 3, 4, 5, 6, 8, 9, 10, 12 是前 10 个丑数。 说明: 1 是丑数。 n 不超过1690。 注意:本题与主站 264 题相同:https://leetcode-cn.com/probl…
2021-12-03
LCP 24-数字游戏
原文链接: https://leetcode-cn.com/problems/5TxKeK 英文原文 中文题目小扣在秋日市集入口处发现了一个数字游戏。主办方共有 `N` 个计数器,计数器编号为 `0 ~ N-1`。每个计数器上分别显示了一个数字,小扣按计数器编号升序将所显示的数字记于数组 `nums`。每个计数器上有两个按钮,分别可以实现将显示数字加一或减一。小扣每一次操作可以选择一个计数器,按下加一或减一按钮。 主办方请小扣回答出一个长度为 N 的数组,第 i 个元素(0 <&#x3D; i …
2021-12-03
LCP 32-批量处理任务
原文链接: https://leetcode-cn.com/problems/t3fKg1 英文原文 中文题目某实验室计算机待处理任务以 `[start,end,period]` 格式记于二维数组 `tasks`,表示完成该任务的时间范围为起始时间 `start` 至结束时间 `end` 之间,需要计算机投入 `period` 的时长,注意: 1. `period` 可为不连续时间 2. 首尾时间均包含在内 处于开机状态的计算机可同时处理任意多个任务,请返回电脑最少开机多久,可处理完所有任务。 …
2021-12-03
LCP 35-电动车游城市
原文链接: https://leetcode-cn.com/problems/DFPeFJ 英文原文 中文题目小明的电动车电量充满时可行驶距离为 `cnt`,每行驶 1 单位距离消耗 1 单位电量,且花费 1 单位时间。小明想选择电动车作为代步工具。地图上共有 N 个景点,景点编号为 0 ~ N-1。他将地图信息以 `[城市 A 编号,城市 B 编号,两城市间距离]` 格式整理在在二维数组 `paths`,表示城市 A、B 间存在双向通路。初始状态,电动车电量为 0。每个城市都设有充电桩,`ch…
2021-12-03
LCP 33-蓄水
原文链接: https://leetcode-cn.com/problems/o8SXZn 英文原文 中文题目给定 N 个无限容量且初始均空的水缸,每个水缸配有一个水桶用来打水,第 `i` 个水缸配备的水桶容量记作 `bucket[i]`。小扣有以下两种操作: - 升级水桶:选择任意一个水桶,使其容量增加为 `bucket[i]+1` - 蓄水:将全部水桶接满水,倒入各自对应的水缸 每个水缸对应最低蓄水量记作 vat[i],返回小扣至少需要多少次操作可以完成所有水缸蓄水要求。 注意:实际蓄水量 …
2021-12-03
剑指 Offer II 059-数据流的第 K 大数值
原文链接: https://leetcode-cn.com/problems/jBjn9C 中文题目设计一个找到数据流中第 k 大元素的类(class)。注意是排序后的第 k 大元素,不是第 k 个不同的元素。 请实现 KthLargest 类: KthLargest(int k, int[] nums) 使用整数 k 和整数流 nums 初始化对象。 int add(int val) 将 val 插入数据流 nums 后,返回当前数据流中第 k 大的元素。 示例: 输入: ["KthLarge…
2021-12-03
剑指 Offer II 060-出现频率最高的 k 个数字
原文链接: https://leetcode-cn.com/problems/g5c51o 中文题目给定一个整数数组 nums 和一个整数 k ,请返回其中出现频率前 k 高的元素。可以按 任意顺序 返回答案。 示例 1: 输入: nums = [1,1,1,2,2,3], k = 2 输出: [1,2] 示例 2: 输入: nums = [1], k = 1 输出: [1] 提示: 1 <= nums.length <= 105 k 的取值范围是 [1, 数组中不相同的元素的个数] 题目数据保…
2021-12-03
剑指 Offer II 061-和最小的 k 个数对
原文链接: https://leetcode-cn.com/problems/qn8gGX 中文题目给定两个以升序排列的整数数组 nums1 和 nums2 , 以及一个整数 k 。 定义一对值 (u,v),其中第一个元素来自 nums1,第二个元素来自 nums2 。 请找到和最小的 k 个数对 (u1,v1), (u2,v2) ... (uk,vk) 。 示例 1: 输入: nums1 = [1,7,11], nums2 = [2,4,6], k = 3 输出: [1,2],[1,4],[1…
2021-12-03
剑指 Offer II 076-数组中的第 k 大的数字
原文链接: https://leetcode-cn.com/problems/xx4gT2 中文题目给定整数数组 nums 和整数 k,请返回数组中第 k 个最大的元素。 请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。 示例 1: 输入: [3,2,1,5,6,4] 和 k = 2 输出: 5 示例 2: 输入: [3,2,3,1,2,4,5,5,6] 和 k = 4 输出: 4 提示: 1 <= k <= nums.length <= 104 -104 <=…
2021-12-03
剑指 Offer II 078-合并排序链表
原文链接: https://leetcode-cn.com/problems/vvXgSW 中文题目给定一个链表数组,每个链表都已经按升序排列。 请将所有链表合并到一个升序链表中,返回合并后的链表。 示例 1: 输入:lists = [[1,4,5],[1,3,4],[2,6]] 输出:[1,1,2,3,4,4,5,6] 解释:链表数组如下: [ 1->4->5, 1->3->4, 2->6 ] 将它们合并到一个有序链表中得到。 1->1->2->3->4->4->5->6 示例 2: 输入:l…
2021-12-03