力扣 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];     //返回中位数
}
相关推荐
星火开发设计13 小时前
C++ 输入输出流:cin 与 cout 的基础用法
java·开发语言·c++·学习·算法·编程·知识
We་ct13 小时前
LeetCode 289. 生命游戏:题解+优化,从基础到原地最优
前端·算法·leetcode·矩阵·typescript
自己的九又四分之三站台13 小时前
9:MemNet记忆层使用,实现大模型对话上下文记忆
人工智能·算法·机器学习
LXS_35714 小时前
STL - 函数对象
开发语言·c++·算法
aini_lovee14 小时前
基于粒子群算法(PSO)优化BP神经网络权值与阈值的实现
神经网络·算法
老鼠只爱大米14 小时前
LeetCode经典算法面试题 #230:二叉搜索树中第K小的元素(递归法、迭代法、Morris等多种实现方案详细解析)
算法·leetcode·二叉搜索树·二叉树遍历·第k小的元素·morris遍历
星期五不见面14 小时前
嵌入式学习!(一)C++学习-leetcode(21)-26/1/29
学习·算法·leetcode
AllData公司负责人14 小时前
【亲测好用】实时开发平台能力演示
java·c语言·数据库
pcm12356714 小时前
设计C/S架构的IM通信软件(3)
java·c语言·架构
2501_9413220314 小时前
通信设备零部件识别与检测基于改进YOLOv8-HAFB-2算法实现
算法·yolo