讨论/《算法面试题汇总》 - 多数元素/
《算法面试题汇总》 - 多数元素
func majorityElement(nums []int) int {
    sort.Ints(nums)
	var count, result, total, v = 0, 0, 0, 0
	for _, num := range nums {
		if count == 0 {
			result = num
		}
		if num == result {
			count = count + 1
		} else {
			count = count - 1
		}
	}
	for _, numCount := range nums {
		if numCount == result {
			total++
		}
	}
	v = len(nums) % 2
	if (len(nums) - total) < ((len(nums) / 2) + v) {
		return result
	}
	return 0
}

image.png

展开全部 35 讨论