力扣 169. 多数元素

思路:

因为题目说一定存在多数元素,就说明一定有一个数的个数多于n/2

将数组采用冒泡从小到大排序,最中间的那个元素一定是多数元素 (因为在大小排好序后,中位数也一定是众数)

答案:

复制代码
int majorityElement(int* nums, int numsSize) 
{
    int i=0,j=0;
    for(i=0;i<numsSize-1;i++)        //冒泡排序
    {
        int flag=1;
        for(j=1;j<numsSize-i;j++)
        {
            if(nums[j-1]>nums[j])
            {
                int tmp=nums[j];
                nums[j]=nums[j-1];
                nums[j-1]=tmp;
                flag=0;
            }
        }            
        if(flag)
        {
            break;
        }
    }
    return nums[numsSize/2];     //返回中位数
}
相关推荐
生态学者14 小时前
Global Change Biology | 森林越“步调一致”,反而越怕干旱?树木生长与叶片活动的同步之谜
大数据·人工智能·算法·r语言·微信公众平台
lsswear14 小时前
Agent 框架新手入门与实战部署指南
大数据·人工智能·算法
学逆向的14 小时前
C 循环结构的执行效率分析
c语言·开发语言·数据结构·网络安全
Data analyse45616 小时前
rnweb 回放数据量太大怎么办?分片存储与断点续传的实现思路
前端·网络·算法·数据分析
Navigator_Z17 小时前
LeetCode //C - 1293. Shortest Path in a Grid with Obstacles Elimination
c语言·算法·leetcode
Nil20818 小时前
leetcode 64最小路径和
算法·leetcode·职场和发展
光影少年18 小时前
AI Agent、自动化与未来工作
人工智能·算法·架构
牧羊人.33318 小时前
计算机视觉基础 第16章|EigenFace,FisherFace,LBPH传统人脸识别算法
人工智能·算法·计算机视觉
jeo陽18 小时前
04-循环实战:素数、最大公约数、级数求和与枚举法
c语言·开发语言·数据结构
Nil20818 小时前
leetcode 72编辑距离
算法·leetcode·职场和发展