寻找列表中只出现一次的字符

出现一次的数字ii

https://www.nowcoder.com/practice/1097ca585245418ea2efd0e8b4d9eb7a?tpId=46&&tqId=29043&rp=1&ru=/ta/classic-code&qru=/ta/classic-code/question-ranking

题目描述
现在有一个整数类型的数组,数组中只有一个元素只出现一次,其余元素都出现三次。你需要找出只出现一次的元素
注意:
你需要给出一个线性时间复杂度的算法,你能在不使用额外内存空间的情况下解决这个问题么?
思路:
我们可以获取列表所有元素分别出现的次数,然后设定限制条件,找到目标元素。因为题目要求,其它元素至少出现三次,所以
当某个元素出现的次数大于1时,本次循环结束,进入下一次循环,若次数为一,则返回该元素。废话不多说,代码如下:
def FindNumber2(A):
    for k in range(len(A)):
        if A.count(A[k]) % 2 == 0:
            continue
        else:
            if A.count(A[k]) > 1:
                continue
            else:
                return A[k]
    
print(FindNumber2([2,2,3,2,4,4,8,7,9,7,3,9]))


全部评论

相关推荐

野猪不是猪🐗:是我导致的,我前天对力扣进行了跨站脚本攻击,网站把我的请求给block了(胡言乱语)
点赞 评论 收藏
分享
01-17 08:34
门头沟学院 Java
想找对象的单身狗在努力存钱:这工资不低了,再高点人家要招博士硕士的
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务