首页 > 编程语言 > 详细

剑指Offer39.数组中出现次数超过一半的数字

时间:2020-07-17 15:42:49      阅读:48      评论:0      收藏:0      [点我收藏+]

题目:

数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。

你可以假设数组是非空的,并且给定的数组总是存在多数元素。 

示例 1:

输入: [1, 2, 3, 2, 2, 2, 5, 4, 2]
输出: 2

限制:

1 <= 数组长度 <= 50000

 

解题思路:

由于要寻找的是出现次数超过数组长度一半的数字,首先想到的数组进行排序,其次就发现所要寻找的数字就是数组最中间的数字。

 

代码:

public static int majorityElement(int[] nums) {
    Arrays.sort(nums);
    return nums[(nums.length)/2];
}

 

剑指Offer39.数组中出现次数超过一半的数字

原文:https://www.cnblogs.com/ghlz/p/13329071.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!