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;
}
相关推荐
im_AMBER27 分钟前
Leetcode 95 分割链表
数据结构·c++·笔记·学习·算法·leetcode·链表
梭七y44 分钟前
【力扣hot100题】(121)反转链表
算法·leetcode·链表
AD钙奶-lalala1 小时前
leetcode核心母题总结
算法·leetcode·职场和发展
YGGP1 小时前
【Golang】LeetCode 2. 两数相加
开发语言·leetcode·golang
努力学算法的蒟蒻1 小时前
day53(1.4)——leetcode面试经典150
算法·leetcode·面试
YGGP2 小时前
【Golang】LeetCode 21. 合并两个有序链表
leetcode·链表·golang
小袁顶风作案2 小时前
leetcode力扣——135.分发糖果
算法·leetcode·职场和发展
YGGP3 小时前
【Golang】LeetCode 19. 删除链表的倒数第 N 个节点
算法·leetcode·链表
平生不喜凡桃李3 小时前
Leetcode-240 :搜索二维矩阵
leetcode·矩阵·深度优先
橘颂TA3 小时前
【剑斩OFFER】算法的暴力美学——面试题 01.02 :判定是否互为字符串重排
c++·算法·leetcode·职场和发展·结构与算法