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;
}
相关推荐
Nil2089 小时前
leetcode 24两两交换链表中的节点
算法·leetcode·链表
土司大王11 小时前
LeetCode hot100——除了自身以外数组的乘积
数据结构·算法·leetcode
ZC跨境爬虫13 小时前
LeetCode 13. 罗马数字转整数(多解法详解 + Java Python 实现)
java·python·leetcode
.道阻且长.13 小时前
10.LeetCode算法习题讲解--滑动窗口--最大连续为一的个数
算法·leetcode·职场和发展
speop15 小时前
llm-algo-leetcode |Task01
算法·leetcode·职场和发展
Scabbards_15 小时前
面试Leetcode - 算法合集
算法·leetcode·面试
程序猿炎义16 小时前
【llm-algo-leetcode学习笔记】显存与性能认知底座
笔记·学习·leetcode
rannn_11116 小时前
【力扣hot100】二叉树专题+总结
java·算法·leetcode·二叉树
啊嘞嘞?16 小时前
力扣(岛屿数量)
算法·leetcode