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;
}
相关推荐
阿昭L13 分钟前
leetcode链表是否有环
算法·leetcode·链表
yaoh.wang21 分钟前
力扣(LeetCode) 83: 删除排序链表中的重复元素 - 解法思路
程序人生·算法·leetcode·链表·面试·职场和发展
阿昭L26 分钟前
leetcode旋转链表
算法·leetcode·链表
im_AMBER27 分钟前
Leetcode 81 【滑动窗口(定长)】
数据结构·笔记·学习·算法·leetcode
Swift社区40 分钟前
LeetCode 452 - 用最少数量的箭引爆气球
算法·leetcode·职场和发展
yaoh.wang1 小时前
力扣(LeetCode) 70: 爬楼梯 - 解法思路
python·算法·leetcode·面试·职场和发展·动态规划·递归
Learner__Q1 小时前
每天五分钟:二分查找-LeetCode高频题解析_day4
python·算法·leetcode
iAkuya2 小时前
(leetcode)力扣100 18矩阵置零(哈希)
leetcode·矩阵·哈希算法
YGGP3 小时前
【Golang】LeetCode 136. 只出现一次的数字
算法·leetcode
YGGP3 小时前
【Golang】LeetCode 169. 多数元素
算法·leetcode