美文网首页
leetcode:169. Majority Element

leetcode:169. Majority Element

作者: 唐僧取经 | 来源:发表于2018-09-07 13:29 被阅读0次

    169. Majority Element

    Description

    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.

    Example 1:

    Input: [3,2,3]
    Output: 3
    Example 2:

    Input: [2,2,1,1,1,2,2]
    Output: 2

    Answer

    package main
    
    import "fmt"
    
    func majorityElement(nums []int) int {
    
        majorityMap := make(map[int]int)
        for _, val := range nums {
            _, ok := majorityMap[val]
            if ok {
                majorityMap[val]++
                continue
            } else {
                majorityMap[val] = 1
            }
    
        }
        temp := 0
        result := 0
        for key, val := range majorityMap {
            if val >= temp {
                temp = val
                result = key
            }
        }
        return result
    }
    
    func main() {
        arr := []int{3, 2, 3}
        fmt.Println(majorityElement(arr))
    
    }
    
    
    
    

    相关文章

      网友评论

          本文标题:leetcode:169. Majority Element

          本文链接:https://www.haomeiwen.com/subject/awhcgftx.html