题解 | #字符串的排列#001

数组中出现次数超过一半的数字

http://www.nowcoder.com/practice/e8a1b01a2df14cb2b228b30ee6a92163

-- coding:utf-8 --

class Solution: def MoreThanHalfNum_Solution(self, numbers): # write code here

    ret = None
    cnt = 0
    pre = None
    for idx,item in enumerate(numbers):
        if cnt==0:
            ret = item
            cnt = 1
            pre = ret
        else:
            if item == pre:
                cnt += 1
            else:
                cnt -= 1
    if numbers.count(ret)<=len(numbers)/2:
        return 0
    return ret
全部评论

相关推荐

刷牛客的我很豁达:你是不是对算法有什么误解,你没手握两篇顶刊顶会,还想搞算法岗,有顶刊顶会在算法岗算才入门
点赞 评论 收藏
分享
迷茫的大四🐶:那你问他上班之后老实了没
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务