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;
}
相关推荐
wabs666几秒前
关于二叉树【力扣101.对称二叉树的思考】
数据结构·c++·算法·leetcode·二叉树
6Hzlia20 分钟前
【Classic 150 刷题计划】 LeetCode 228. 汇总区间 | C++ 双游标区间扫描与 to_string 规范
c++·算法·leetcode
玖玥拾1 小时前
LeetCode 383 赎金信
算法·leetcode
橘子汽水1682 小时前
Leetcode 763,45 划分字母区间 跳跃游戏II
数据结构·算法·leetcode
6Hzlia3 小时前
【Classic 150 刷题计划】 LeetCode 228. 汇总区间 | C++ 锚点游标与断点检测法
c++·算法·leetcode
Navigator_Z18 小时前
LeetCode //C - 1250. Check If It Is a Good Array
c语言·算法·leetcode
圣保罗的大教堂1 天前
leetcode 3483. 不同三位偶数的数目 简单
leetcode
mmmmath_31 天前
LeetCode.018.四数之和
数据结构·算法·leetcode
圣保罗的大教堂1 天前
leetcode 836. 矩形重叠 简单
leetcode
土司大王1 天前
LeetCode hot100——394.字符串解码:Java 双栈模拟
java·算法·leetcode