leetcode169 多数元素

一、问题描述
二、解题思路

**解法一:**排序+返回中位数

由于这个多数元素出现的次数多于n/2,所以排序之后数组的中位数一定是这个元素,返回即可。

**解法二:**哈希表

使用哈希表来记录元素出现的次数,返回这个多数元素。

三、代码实现

解法一:

cpp 复制代码
class Solution {
public:
    int majorityElement(vector<int>& nums) {
        //排序+返回中位数
        sort(nums.begin(),nums.end());
        int n=nums.size();
        return nums[n/2];
    }
};

解法二:

cpp 复制代码
class Solution {
public:
    int majorityElement(vector<int>& nums) {
        //哈希表
        int n=nums.size();
        unordered_map<int,int> hash;
        for(auto x:nums){
            hash[x]++;
            if(hash[x]>n/2) return x;
        }
        return 0;
    }
};
相关推荐
学计算机的计算基6 分钟前
回溯算法下篇:四道经典题讲透约束剪枝、原地标记、预计算与状态压缩
java·笔记·算法
咕白m62524 分钟前
通过 C++ 写入数据到 Excel 文档
c++·后端
霸道流氓气质33 分钟前
SpringBoot中实现告警判定算法-位报警与模拟量阈值-技术详解
spring boot·算法·jquery
行者全栈架构师35 分钟前
混元 Hy3 Agent 实战:季度报告 3 小时变 40 分钟
算法·架构·代码规范
兰令水1 小时前
hot100【acm版】【2026.7.21打卡-java版本】
java·开发语言·算法·leetcode·面试
qz5zwangzihan11 小时前
题解:Atcoder Beginner Contest abc467 F - Email Scheduling Optimization
c++·贪心·atcoder·平衡树·abc467·abc467_f·fhq-treap
好好沉淀1 小时前
主键选择(自增 vs UUID vs 雪花算法)
java·算法
郝学胜-神的一滴2 小时前
中级OpenGL教程 023:Assimp模型加载全解——从源码到架构的骈文探秘
c++·unity·游戏引擎·cmake·unreal engine·opengl
星恒随风2 小时前
C++ STL 详解:list 的使用、迭代器失效、模拟实现与 vector 对比
开发语言·数据结构·c++·笔记·学习·list
退休倒计时2 小时前
【每日一题】LeetCode 131. 分割回文串 TypeScript
算法·leetcode·typescript