算法面试题汇总_2求众数

题目:给定一个大小为 n 的数组,找到其中的众数。众数是指在数组中出现次数大于 ⌊ n/2 ⌋ 的元素。
你可以假设数组是非空的,并且给定的数组总是存在众数。
示例 1:
输入: [3,2,3]
输出: 3
示例 2:
输入: [2,2,1,1,1,2,2]
输出: 2
思路
先sort排下序,然后取最中间的那个数因为定义的是个数大于数组长度的二分之一
代码实现

public class 求众数 {
    //先sort排下序,然后取最中间的那个数因为定义的是个数大于数组长度的二分之一
    public static void main(String[] args) {
        int[] arr = {2,2,1,1,1,2,2};
        System.out.println(moreNum(arr));
    }
    public static int moreNum(int[] nums){
        Arrays.sort(nums);
        return nums[nums.length/2];
    }
}

结果
在这里插入图片描述

发布了110 篇原创文章 · 获赞 31 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_39795049/article/details/95733840