Golang:
思路:很早以前做过的简单题,但那会儿还不知道有简单的方法。多数元素,是指元素的数目大于数组长度的一半。那么,如果让每一个多数元素和其他任意元素抵消,那么最后剩下来的还是多数元素。
代码如下:
func majorityElement(nums []int) int {
temp,count:=-1,0
for i:=0;i<len(nums);i++{
if temp==-1{
temp=i
}
if nums[i]==nums[temp]{
count++
}else{
count--
}
if count>len(nums)/2{
return count
}
if count==0{
temp=-1
}
}
return nums[temp]
}
有疑问加站长微信联系(非本文作者)