前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >LeetCode169 Majority Element

LeetCode169 Majority Element

作者头像
用户1665735
发布2019-02-19 11:12:58
3950
发布2019-02-19 11:12:58
举报
文章被收录于专栏:kevindroid

题目

Given an array of size n, find the majority element. The majority element is the element that appears more than ⌊ n/2 ⌋ times.

You may assume that the array is non-empty and the majority element always exist in the array. 如果一个数组里某个元素出现的次数超过总数的一半,那么,就把这个元素称为优先元素,找到这个元素。

解题思路

看到题目的第一想法是遍历,读取每个元素出现的次数,然后选取出现次数最多的那个。然后想想,这样的话优先元素超过总数一半的条件不就没什么用,如果把整个数组排个序,在有序条件下某个元素出现次数超过一半,那么中位数不就是优先元素吗。 想通了思路,编码就很简单。

代码语言:javascript
复制
public int majorityElement(int[] nums) {
        Arrays.sort(nums);
        int len = nums.length;
        if(len%2 == 0) return nums[len/2];
        else return nums[(len-1)/2];
    }
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017年02月16日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 题目
  • 解题思路
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档