有序向量

闻缺陷则喜何志丹1 年前
c++·算法·二分查找·图论·有序向量·点对·数目
C++二分查找:统计点对的数目C++双指针算法:统计点对的数目C++二分算法:得到子序列的最少操作次数二分查找算法合集给你一个无向图,无向图由整数 n ,表示图中节点的数目,和 edges 组成,其中 edges[i] = [ui, vi] 表示 ui 和 vi 之间有一条无向边。同时给你一个代表查询的整数数组 queries 。 第 j 个查询的答案是满足如下条件的点对 (a, b) 的数目: a < b cnt 是与 a 或者 b 相连的边的数目,且 cnt 严格大于 queries[j] 。 请你返回一个数组 answers ,
闻缺陷则喜何志丹1 年前
c++·算法·二分查找·有序向量·离散化·最多会议·离线查询
C++二分向量算法:最多可以参加的会议数目 IIC++二分算法:最多可以参加的会议数目 II二分查找算法合集给你一个 events 数组,其中 events[i] = [startDayi, endDayi, valuei] ,表示第 i 个会议在 startDayi 天开始,第 endDayi 天结束,如果你参加这个会议,你能得到价值 valuei 。同时给你一个整数 k 表示你能参加的最多会议数目。 你同一时间只能参加一个会议。如果你选择参加某个会议,那么你必须 完整 地参加完这个会议。会议结束日期是包含在会议内的,也就是说你不能同时参加一个开始日
闻缺陷则喜何志丹1 年前
c++·算法·二分查找·有序向量·第k小·和最小·多路归并
C++二分查找算法:查找和最小的 K 对数字二分查找相关题目给定两个以 非递减顺序排列 的整数数组 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,6] 解释: 返回序列中的前 3 对数: [1,2],[1,4],[1,6],[7,2
闻缺陷则喜何志丹1 年前
数据结构·c++·算法·二分查找·索引·有序向量·众数
C++二分查找算法:数组中占绝大多数的元素设计一个数据结构,有效地找到给定子数组的 多数元素 。 子数组的 多数元素 是在子数组中出现 threshold 次数或次数以上的元素。 实现 MajorityChecker 类: MajorityChecker(int[] arr) 会用给定的数组 arr 对 MajorityChecker 初始化。 int query(int left, int right, int threshold) 返回子数组中的元素 arr[left…right] 至少出现 threshold 次数,如果不存在这样的元素则返
闻缺陷则喜何志丹1 年前
c++·算法·leetcode·二分查找·有序向量·数对距离·第k小
C++二分算法: 找出第 K 小的数对距离数对 (a,b) 由整数 a 和 b 组成,其数对距离定义为 a 和 b 的绝对差值。 给你一个整数数组 nums 和一个整数 k ,数对由 nums[i] 和 nums[j] 组成且满足 0 <= i < j < nums.length 。返回 所有数对距离中 第 k 小的数对距离。 示例 1: 输入:nums = [1,3,1], k = 1 输出:0 解释:数对和对应的距离如下: (1,3) -> 2 (1,1) -> 0 (3,1) -> 2 距离第 1 小的数对是 (1,1) ,距离为 0 。
闻缺陷则喜何志丹1 年前
c++·算法·前缀和·测试用例·二分·有序向量·匿名函数
C++前缀和算法应用:和至少为 K 的最短子数组的原理、源码及测试用例C++算法:前缀和、前缀乘积、前缀异或的原理、源码及测试用例 包括课程视频给你一个整数数组 nums 和一个整数 k ,找出 nums 中和至少为 k 的 最短非空子数组 ,并返回该子数组的长度。如果不存在这样的 子数组 ,返回 -1 。 子数组 是数组中 连续 的一部分。 示例 1: 输入:nums = [1], k = 1 输出:1 示例 2: 输入:nums = [1,2], k = 4 输出:-1 示例 3: 输入:nums = [2,-1,2], k = 3 输出:3 提示: 1 <= nums