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;
}
相关推荐
有一个好名字16 分钟前
力扣-奇偶链表
算法·leetcode·链表
wxm63116 分钟前
力扣算法题(C++):1、2
java·算法·leetcode
im_AMBER23 分钟前
Leetcode 103 反转链表 II
数据结构·c++·笔记·学习·算法·leetcode
iAkuya2 小时前
(leetcode)力扣100 40二叉树的直径(迭代递归)
java·算法·leetcode
橘颂TA2 小时前
【剑斩OFFER】算法的暴力美学——leetCode 103 题:二叉树的锯齿形层序遍历
算法·leetcode·结构与算法
客卿1232 小时前
C语言实现数组串联--力扣冒险
c语言·开发语言·leetcode
Lips6112 小时前
2026.1.13力扣刷题笔记
笔记·算法·leetcode
老鼠只爱大米2 小时前
LeetCode算法题详解 76:最小覆盖子串
算法·leetcode·双指针·滑动窗口·最小覆盖子串·minwindow
wen__xvn3 小时前
代码随想录算法训练营DAY15第六章 二叉树part03
数据结构·算法·leetcode
Swift社区3 小时前
LeetCode 374 猜数字大小 - Swift 题解
算法·leetcode·swift