leetcode刷题——排序和二分

leetcode刷题——排序和二分

归并排序——分治共logn层,每层是O(n)时间复杂度O(nlogn)1.确定分界点,将数组按最中间的位置分开(下标的中间值)2.递归排序左边和右边3.左边和右边合二为一俩个有序数组,用指针移动的方法进行比较,min1指针此时所指的数这种情况当min1指针走到数组末尾时,把min2指针所指的数及其余...

LeetCode (二分小专题)33搜索旋转排序数组&34在排序数组中查找元素的第一个和最后一个位置&35搜索插入位置

LeetCode (二分小专题)33搜索旋转排序数组&34在排序数组中查找元素的第一个和最后一个位置&35搜索插入位置

前言二分查找我想大家都很熟悉,二分查找每次判断并比较元素所在区间进行压缩,每次都可以压缩一半的区间,所以压到1个大小把它你想来看就是(最坏)扩散了n次到达原始长度。很多题就是原始的二分,但很多题就是二分变种。33搜索旋转排序数组这题其实就是一个二分变种,加了一些其他的条件。每次的mid要根据判断如何...

二分算法-LeetCode 69

二分算法-LeetCode 69

二分算法二分算法模板, 二分搜索即搜索一个数,如果存在,返回其索引,否则返回-1。int binarySearch(int[] nums, int target) { int left = 0; int right = nums.length - 1; // 注意 while(left <= ...

【刷穿 LeetCode】剑指 Offer II 069. 山峰数组的顶部 : 二分 & 三分极值问题

【刷穿 LeetCode】剑指 Offer II 069. 山峰数组的顶部 : 二分 & 三分极值问题

题目描述这是 LeetCode 上的 剑指 Offer II 069. 山峰数组的顶部 ,难度为 简单。Tag : 「二分」、「三分」符合下列属性的数组 arr 称为 山峰数组(山脉数组) :arr.length >= 3存在i(0 < i < arr.length - ...

【刷穿 LeetCode】1894. 找到需要补充粉笔的学生编号 :「前缀和 + 二分」&「模拟」

【刷穿 LeetCode】1894. 找到需要补充粉笔的学生编号 :「前缀和 + 二分」&「模拟」

题目描述这是 LeetCode 上的 1894. 找到需要补充粉笔的学生编号 ,难度为 中等。Tag : 「前缀和」、「二分」、「模拟」一个班级里有 n 个学生,编号为 0 到 n - 1 。每个学生会依次回答问题,编号为 0 的学生先回答,然后是编...

【刷穿 LeetCode】704. 二分查找 : 运用二分找分割点

【刷穿 LeetCode】704. 二分查找 : 运用二分找分割点

题目描述这是 LeetCode 上的 704. 二分查找 ,难度为 简单。Tag : 「二分」给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target  ,写一个函数搜索 nums 中的 target,如果...

【刷穿 LeetCode】528. 按权重随机选择 :「前缀和 + 二分」&「模拟(桶轮询)」

【刷穿 LeetCode】528. 按权重随机选择 :「前缀和 + 二分」&「模拟(桶轮询)」

题目描述这是 LeetCode 上的 528. 按权重随机选择 ,难度为 中等。Tag : 「前缀和」、「二分」、「模拟」给定一个正整数数组 w ,其中 w[i] 代表下标 i 的权重(下标从 0 开始),请写一个函数 pickIndex ...

【刷穿 LeetCode】有效三角形的个数 :「简单枚举」&「二分枚举」&「双指针」

【刷穿 LeetCode】有效三角形的个数 :「简单枚举」&「二分枚举」&「双指针」

题目描述这是 LeetCode 上的 611. 有效三角形的个数 ,难度为 中等。Tag : 「排序」、「二分」、「双指针」给定一个包含非负整数的数组,你的任务是统计其中可以组成三角形三条边的三元组个数。示例 1:输入: [2,2,3,4] 输出: 3 解释: 有效的组合是: 2,3,4 (使用第一...

【刷穿 LeetCode】一题双解 :「朴素解法」&「二分 + 优先队列(堆)」| 8月更文挑战

【刷穿 LeetCode】一题双解 :「朴素解法」&「二分 + 优先队列(堆)」| 8月更文挑战

题目描述这是 LeetCode 上的 1337. 矩阵中战斗力最弱的 K 行 ,难度为 简单。Tag : 「优先队列」、「二分」给你一个大小为 m * nm ∗n 的矩阵 matmat,矩阵由若干军人和平民组成,分别用 11 和 00 表示。请你返回矩阵中战斗力最弱的 kk 行的索引,按从...

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。