Passion and Patience

Work Hard, Play Hard

导航

Leetcode 多数元素

Day 8 第一题

解题思路:数组中的数a出现次数若超过n/2,则排序后处于中间位置的元素一定是a。
import java.util.*;

class Solution {
    public int majorityElement(int[] nums) {
        // 如果他超过n/2,则排序后处于中间位置。
        int n = nums.length;
        Arrays.sort(nums);

        int majorityElement = nums[(int)Math.ceil(n/2)];
        return majorityElement;

    }
}

对于数组类型元素,可直接使用Array.sort()方法。

补充:

Arrays.sort(int[] a, int fromIndex, int toIndex);

Arrays.sort(T[] a, Comparator<? Super T> c) ;

Integer[] array = {2,3,5,6,9,7}; Arrays.sort(array, (o1, o2) -> o2 - o1);

posted on 2024-03-22 13:34  安静的聆  阅读(2)  评论(0编辑  收藏  举报