双指针

不吃粑粑-1 天前
双指针
环形数组上的滑动窗口,取模题型trick abc440_c C - Striped Horsehttps://atcoder.jp/contests/abc440/tasks/abc440_c思路:
老鼠只爱大米2 天前
leetcode·动态规划·双指针·单调栈·接雨水·雨水收集
LeetCode算法题详解 42:接雨水给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。示例 1
老鼠只爱大米2 天前
leetcode·面试题·双指针·盛最多水的容器·面积最大化
LeetCode算法题详解 11:盛最多水的容器给定一个长度为 n 的整数数组 height。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i])。
老鼠只爱大米3 天前
算法·leetcode·双指针·三数之和·分治法·three sum
LeetCode算法题详解 15:三数之和给你一个整数数组 nums,判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i != j、i != k 且 j != k,同时还满足 nums[i] + nums[j] + nums[k] == 0。请你返回所有和为 0 且不重复的三元组。
老鼠只爱大米3 天前
算法·leetcode·双指针·快慢指针·移动零·move zeroes
LeetCode算法题详解 283:移动零给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。请注意,必须在不复制数组的情况下原地对数组进行操作。
田梓燊5 天前
双指针
leetcode 有序数组的平方思路类似于归并排序,我们需要首先注意到,距离零更远的数字,是平方更大的数字,换句话说,就是绝对值更大的数字,是平方更大的数字。我们这样做是一个线性的做法,如果我们按照绝对值排序,只要是基于比较的排序算法,时间复杂度的下界就是 O(nlogn)O(nlogn)O(nlogn) ,所以的话,我们需要更小的时间复杂度需要考虑不进行排序,考虑用双指针实现我们的需求。
无尽的罚坐人生6 天前
数据结构·算法·leetcode·动态规划··双指针
hot 100 42. 接雨水给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。n == height.length 1 <= n <= 2 * 104 0 <= height[i] <= 10^5
羑悻的小杀马特6 天前
算法·leetcode·职场和发展·动态规划·双指针·单调栈·接雨水
LeetCode 42接雨水全解:暴力超时→DP降维打击→双指针极限压缩空间→单调栈栈式凹槽定位,全景式解析算法优化路径本篇围绕LeetCode 42“接雨水”展开,剖析四种解法:暴力法通过嵌套循环统计每柱接水量,易超时;动态规划预先记录左右最大值,将复杂度降至O(n);双指针边遍历边更新极值,空间优化至O(1);单调栈利用栈维护“凹槽”,高效定位存水区间。各方法层层递进,展现算法优化的核心思路。
无尽的罚坐人生11 天前
数据结构·算法·双指针
hot 100 283. 移动零给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 请注意 ,必须在不复制数组的情况下原地对数组进行操作。
伟大的车尔尼11 天前
双指针·哈希表
双指针题目:K 和数对的最大数目标题:K 和数对的最大数目出处:1679. K 和数对的最大数目4 级给定一个整数数组 nums \texttt{nums} nums 和一个整数 k \texttt{k} k。
长安er16 天前
数据结构·算法·leetcode·链表·双指针
LeetCode136/169/75/31/287 算法技巧题核心笔记目录一、136. 只出现一次的数字题目概述核心理论解题思路解法实现(Java)复杂度分析重难点分析同类题拓展
伟大的车尔尼20 天前
二叉树··二叉搜索树·双指针
双指针题目:两数之和 IV - 输入二叉搜索树标题:两数之和 IV - 输入二叉搜索树出处:653. 两数之和 IV - 输入二叉搜索树3 级给定一个二叉搜索树的根结点 root \texttt{root} root 和一个目标值 k \texttt{k} k,如果二叉搜索树中存在两个元素和等于给定的目标值,则返回 true \texttt{true} true。
yaoh.wang21 天前
python·程序人生·算法·leetcode·面试·职场和发展·双指针
力扣(LeetCode) 88: 合并两个有序数组 - 解法思路给你两个按非递减顺序排列的整数数组 nums1 和 nums2。将 nums2 合并到 nums1 中,使合并后的数组同样按非递减顺序排列。nums1 的长度为 m + n,其中前 m 个元素是有效的,后 n 个元素设置为 0 且应被忽略。
yaoh.wang24 天前
python·程序人生·算法·leetcode·面试·职场和发展·双指针
力扣(LeetCode) 27: 移除元素 - 解法思路给定一个数组和一个值,原地删除所有等于该值的元素。返回不等于该值的元素数量。使用两个指针:一个(k)跟踪下一个非 val 元素的位置,另一个(i)遍历数组。将非 val 元素复制到前面:
伟大的车尔尼24 天前
排序·双指针·哈希表
双指针题目:两个数组的交集 II标题:两个数组的交集 II出处:350. 两个数组的交集 II3 级给定两个数组 nums1 \texttt{nums1} nums1 和 nums2 \texttt{nums2} nums2,返回两个数组的交集。结果中的每个元素的出现次数必须是该元素在两个数组中同时出现的次数,可以按任意额顺序返回结果。
伟大的车尔尼1 个月前
排序·双指针·哈希表
双指针题目:两个数组的交集标题:两个数组的交集出处:349. 两个数组的交集3 级给定两个数组 nums1 \texttt{nums1} nums1 和 nums2 \texttt{nums2} nums2,返回两个数组的交集。结果中的每个元素必须是唯一的,可以按任意额顺序返回结果。
Chen--Xing1 个月前
c++·python·算法·leetcode·rust·双指针
LeetCode 11.盛最多水的容器给定一个长度为 n 的整数数组 height 。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。
lightqjx1 个月前
c++·算法·leetcode·双指针
【算法】双指针目录一、移动零1. 分析解答2. 代码实现二、复写零1. 分析解答2. 代码实现三、快乐数1. 分析解答
长安er1 个月前
数据结构·算法·leetcode·链表·双指针·环形链表
LeetCode876/141/142/143 快慢指针应用:链表中间 / 环形 / 重排问题目录一、876. 链表的中间节点(快慢指针基础)题目核心核心难点拆解深度思路(盒子 - 标签 - 纸条模型)
程序员-King.1 个月前
算法·leetcode·二分查找·双指针
day122—二分查找—完成旅途的最少时间(LeetCode-2187)给你一个数组 time ,其中 time[i] 表示第 i 辆公交车完成 一趟旅途 所需要花费的时间。