LeetCodeHot100-322-零钱兑换
我要成为编程高手!
LeetCodeHot100-279-完全平方数
我要成为编程高手!
LeetCodeHot100-198-打家劫舍
我要成为编程高手!
LeetCodeHot100-118-杨辉三角
我要成为编程高手!
LeetCodeHot100-70-爬楼梯
我要成为编程高手!
LeetCodeHot100-287-寻找重复数
我要成为编程高手!
LeetCodeHot100-31-下一个排列
我要成为编程高手!
LeetCodeHot100-75-颜色分类
我要成为编程高手!
LeetCodeHot100-169-多数元素
题目 给定一个大小为 n 的数组 nums ,返回其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。 你可以假设数组是非空的,并且给定的数组总是存在多数元素。 示例 1: 12输入:nums = [3,2,3]输出:3 示例 2: 12输入:nums = [2,2,1,1,1,2,2]输出:2 提示: n == nums.length 1 <= n <= 5 * 104 -109 <= nums[i] <= 109 **进阶:**尝试设计时间复杂度为 O(n)、空间复杂度为 O(1) 的算法解决此问题。 题解 一眼秒杀的解法就是先排序,然后直接 return 中间的那个数即可了。 最终最优解法,就是摩尔投票法,便是进阶解法。 候选人 (cand_num) 初始化为 nums[0],票数 count 初始化为 1。 当遇到与 cand_num 相同的数,则票数 count = count + 1,否则票数 count = count - 1。 当票数 count 为 0 时,更换候选人,并将票数 count 重置为...
LeetCodeHot100-136-只出现一次的数字
我要成为编程高手!