0
点赞
收藏
分享

微信扫一扫

LeetCode每日一题(169. 多数元素)

青青子衿谈育儿 2022-04-25 阅读 29
javaleetcode
class Solution {
    public int majorityElement(int[] nums) {
        //当一个数次数大于这个数,这个数就是多数元素
       int temp = nums.length / 2;
       //从小到大排列
       Arrays.sort(nums);

       //临时元素默认定义为第一个元素
       int a = nums[0];
       //用来记录次数
       int count = 0;

       //遍历数组
       for(int i = 0; i < nums.length; i++){
           //如果临时元素等于其他遍历元素,次数++
           if(a == nums[i]){
               count++;
               //如果次数大于temp,证明是多数元素,++
               if(count > temp){
                   return nums[i];
               }
               //如果临时元素不等于遍历元素
           }else if(a != nums[i]){
               //把临时元素定义为遍历元素
               a = nums[i];
               //同时次数定为1
               count = 1;
           }
       }

       return 0;
    }
}

 

举报

相关推荐

0 条评论