随笔分类 - 数据结构与算法 / 堆
摘要:1.题目介绍 给你一个整数数组 nums,请你将该数组升序排列。 示例 1: 输入:nums = [5,2,3,1] 输出:[1,2,3,5] 示例 2: 输入:nums = [5,1,1,2,0,0] 输出:[0,0,1,1,2,5] 2.题解 补充-建堆过程的时间复杂度为O(n)而不是\(O(n
阅读全文
摘要:1.题目介绍 给你一个整数数组 gifts ,表示各堆礼物的数量。每一秒,你需要执行以下操作: 选择礼物数量最多的那一堆。 如果不止一堆都符合礼物数量最多,从中选择任一堆即可。 选中的那一堆留下平方根数量的礼物(向下取整),取走其他的礼物。 返回在 k 秒后剩下的礼物数量。 示例 1: 输入:gif
阅读全文
摘要:1.堆介绍 「堆 heap」是一种满足特定条件的完全二叉树,主要可分为图 8-1 所示的两种类型。 「大顶堆 max heap」:任意节点的值 其子节点的值。 「小顶堆 min heap」:任意节点的值 其子节点的值。 堆作为完全二叉树的一个特例,具有以下特性。 最底层节点靠左填充,其他层的节点都被
阅读全文