2024/4/1—力扣—主要元素

代码实现:

思路:摩尔投票算法

cpp 复制代码
int majorityElement(int *nums, int numsSize) {
    int candidate = -1;
    int count = 0;
    for (int i = 0; i < numsSize; i++) {
        if (count == 0) {
            candidate = nums[i];
        }
        if (nums[i] == candidate) {
            count++;
        } else {
            count--;
        }
    }
    count = 0;
    int length = numsSize;
    for (int i = 0; i < numsSize; i++) {
        if (nums[i] == candidate) {
            count++;
        }
    }
    return count * 2 > length ? candidate : -1;
}
相关推荐
风筝在晴天搁浅6 小时前
LeetCode 143.重排链表
算法·leetcode·链表
承渊政道7 小时前
【动态规划算法】(子数组系列问题建模与解题思路精讲)
数据结构·c++·学习·算法·leetcode·动态规划·哈希算法
Morwit7 小时前
【力扣hot100】 494. 目标和
数据结构·算法·leetcode
阿Y加油吧7 小时前
二刷 LeetCode:198. 打家劫舍 & 279. 完全平方数 复盘笔记
笔记·算法·leetcode
承渊政道7 小时前
【动态规划算法】(子序列问题解题框架与典型案例)
数据结构·c++·学习·算法·leetcode·macos·动态规划
阿Y加油吧7 小时前
二刷 LeetCode:215. 数组中的第 K 个最大元素 & 347. 前 K 个高频元素 复盘笔记
笔记·leetcode·排序算法
m0_629494737 小时前
LeetCode 热题 100-----15.轮转数组
数据结构·算法·leetcode
玛丽莲茼蒿8 小时前
Leetcode hot100 螺旋矩阵【中等】
算法·leetcode·矩阵
Tisfy8 小时前
LeetCode 0396.旋转函数:求diff
算法·leetcode·题解·模拟·增量法
玛丽莲茼蒿1 天前
Leetcode hot100 每日温度【中等】
算法·leetcode·职场和发展