leetcode

YGGP14 分钟前
算法·leetcode
【Golang】LeetCode 136. 只出现一次的数字题目中已经明确说,除了答案对应的那个元素之外,其它元素均出现两次,因此我们直接对整个数组进行异或,即可得到最终的答案。异或的性质就是相同的两个数值求异或,答案是0,而不同的两个数值进行异或,答案是1,因此对整个数组求异或,出现过两次的元素最终都消失了,只剩下答案对应的那个元素。
YGGP22 分钟前
算法·leetcode
【Golang】LeetCode 169. 多数元素我们分别使用「排序法」和「投票法」两种思路来解决这道题。「排序法」很有意思,我们对数组排序之后,会出现一个性质,那就是中位数一定是众数,前提是这个众数在数组当中出现过的此时大于半数。因此对数组排序之后直接返回中位数就是正确的答案,但该方法最优的时间复杂度仍然排序的时间复杂度O(nlog⁡n)O(n\log{n})O(nlogn)。
yaoh.wang1 小时前
python·算法·leetcode·面试·职场和发展·牛顿法·二分法
力扣(LeetCode) 69: x 的平方根 - 解法思路给定一个非负整数 x,返回 x 的平方根,向下取整到最近的整数。返回的整数也应该是非负的。不能使用任何内置的指数函数或运算符。
YGGP1 小时前
算法·leetcode
【Golang】LeetCode 31. 下一个排列这道题目已经不是第一次在我的频道出现了😂,但是时隔过久没有刷题,又忘记了思路,在此重新记录一次。寻找下一个排列,也就是寻找下一个比当前稍大的组合。我们要做的就是从后往前首先找到一个“可提升的位置”,也就是从后往前寻找一个“谷值”。如果从后往前我们不能找到一个位置满足nums[i] < nums[i + 1],这就说明当前数组已经是降序排列了,也就是“最后一个排列”,直接将整个数组翻转,就可以得到下一个排列(比如[3, 2, 1],下一个排列就是[1, 2, 3])。
元亓亓亓1 小时前
算法·leetcode·职场和发展
LeetCode热题100--70. 爬楼梯--简单假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?
一起养小猫1 小时前
java·数据结构·算法·leetcode
LeetCode100天Day3-判断子序列与汇总区间在算法学习的过程中,字符串处理和数组操作是两个非常重要的领域。今天的两道题目分别代表了这两个领域的经典问题:判断子序列问题考察我们对字符串匹配的理解,而汇总区间问题则训练我们对有序数组的处理能力。这两个问题虽然难度不同,但都蕴含着重要的算法思想。
YGGP1 小时前
算法·leetcode
【Golang】LeetCode 75. 颜色分类看到“相同的颜色相邻”、“原地修改数组”、“对数组原地排序”的字样,我第一眼想到的思路就是使用双指针。在 Hot 100 的双指针专题当中,我们已经接触过「移动零」这样的题目了,这道题其实就是「移动零」当中双指针的应用。
杜子不疼.2 小时前
算法·leetcode·职场和发展
【LeetCode 704 & 34_二分查找】二分查找 & 在排序数组中查找元素的第一个和最后一个位置在算法学习中,二分查找是一种高效的查找算法,其时间复杂度为 O ( l o g n ) O(log n) O(logn),适用于有序数组的查找场景。在实际场景中,当只需判断目标值是否存在于有序数组中,且数组内元素唯一时,用最简单的基础二分查找就足够,比如在按学号有序排列的唯一学生ID数组中查找某学生是否存在、在无重复的商品编码有序列表中检索指定编码是否存在;而当有序数组中存在重复的目标值,且需要确定目标值的范围边界时,就需要用查找左右边界的二分查找,比如在按时间戳排序的重复打卡记录中找某员工首次和末次打卡
LYFlied2 小时前
前端·算法·leetcode·面试·职场和发展
【每日算法】LeetCode 437. 路径总和 III对前端开发者而言,学习算法绝非为了"炫技"。它是你从"页面构建者"迈向"复杂系统设计者"的关键阶梯。它将你的编码能力从"实现功能"提升到"设计优雅、高效解决方案"的层面。从现在开始,每天投入一小段时间,结合前端场景去理解和练习,你将会感受到自身技术视野和问题解决能力的质的飞跃。------ 算法:资深前端开发者的进阶引擎
alphaTao5 小时前
算法·leetcode
LeetCode 每日一题 2025/12/15-2025/12/21记录了初步解题思路 以及本地实现代码;并不一定为最优 也希望大家能一起探讨 一起进步dp[i]代表以i为最后一天的平滑下降阶段个数 dp[i]最小为1
LYFlied12 小时前
数据结构·算法·leetcode·面试·动态规划
【算法解题模板】动态规划:从暴力递归到优雅状态转移的进阶之路对前端开发者而言,学习算法绝非为了“炫技”。它是你从“页面构建者”迈向“复杂系统设计者”的关键阶梯。它将你的编码能力从“实现功能”提升到“设计优雅、高效解决方案”的层面。从现在开始,每天投入一小段时间,结合前端场景去理解和练习,你将会感受到自身技术视野和问题解决能力的质的飞跃。 ------ 算法:资深前端开发者的进阶引擎
风筝在晴天搁浅16 小时前
数据结构·算法·leetcode
hot100 239.滑动窗口最大值思路:利用单调队列维护滑动窗口。1.右边入(元素进入队尾,同时维护队列的单调性)。2.左边出(元素离开队首)。
LYFlied16 小时前
前端·数据结构·算法·leetcode
【算法解题模板】-解二叉树相关算法题的技巧对前端开发者而言,学习算法绝非为了“炫技”。它是你从“页面构建者”迈向“复杂系统设计者”的关键阶梯。它将你的编码能力从“实现功能”提升到“设计优雅、高效解决方案”的层面。从现在开始,每天投入一小段时间,结合前端场景去理解和练习,你将会感受到自身技术视野和问题解决能力的质的飞跃。------ 算法:资深前端开发者的进阶引擎
菜鸟233号18 小时前
java·数据结构·算法·leetcode
力扣78 子集 java实现78.子集给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)。解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。
月明长歌19 小时前
java·数据结构·windows·算法·leetcode·二叉树
【码道初阶】【Leetcode94&144&145】二叉树的前中后序遍历(非递归版):显式调用栈的优雅实现很多人写递归遍历很顺手,但一到非递归就开始迷糊:栈怎么压?什么时候弹?为什么后序还要 prev?其实核心只有一句话:
DanyHope19 小时前
算法·leetcode·哈希算法·散列表
《LeetCode 49. 字母异位词分组:哈希表 + 排序 全解析》字母异位词分组是哈希表的经典应用场景之一,核心是找到 “字母异位词的统一特征”,并通过哈希表实现高效分组。本文将从题目、核心思路、代码实现、复杂度分析四个维度,完整拆解这道题的解题逻辑。
iAkuya19 小时前
数据结构·算法·leetcode
(leetcode) 力扣100 15轮转数组(环状替代)给定一个整数数组 nums,将数组中的元素向右轮转 k 个位置,其中 k 是非负数。1 <= nums.length <= 105 -231 <= nums[i] <= 231 - 1 0 <= k <= 105
努力学算法的蒟蒻19 小时前
算法·leetcode·面试
day38(12.19)——leetcode面试经典15092. 反转链表 II
iAkuya20 小时前
算法·leetcode·哈希算法
(leetcode)力扣100 17缺失的第一个正数(哈希)给你一个未排序的整数数组 nums ,请你找出其中没有出现的最小的正整数。请你实现时间复杂度为 O(n) 并且只使用常数级别额外空间的解决方案。
sin_hielo20 小时前
算法·leetcode·宽度优先
leetcode 2092(排序+bfs)2092: 找出知晓秘密的所有专家思路:排序+bfs广度优先搜索假设一开始 0 和 1 知道秘密。对比如下两种情况: