CodeWars-Find the odd int

好久没写代码了,挺不习惯的哈哈哈。
做一题简单的练练手

一.题目

Given an array, find the int that appears an odd number of times.
There will always be only one integer that appears an odd number of times.

很简短的两句话,翻译的话就是:

给一个列表,找出那个出现了奇数次的整数
每个列表中只有一个整数是出现了一次的

举个栗子

test.assert_equals(find_it([20,1,-1,2,-2,3,3,5,5,1,2,4,20,4,-1,-2,5]), 5)

在列表中,只有5出现了奇数次(3次),所以输出5。

二.代码和思路

先上代码

代码

def find_it(seq):
    list_set = set(seq)
    for item in list_set:
        if seq.count(item)%2 == 1:
            return item

思路

这题目简短,也很简单,就是简单的计数而已。
1.先确定列表中有哪些数字。
2.对数字计数,出现奇数次则输出。
确定列表有哪些数字用集合,统计次数则用列表的count方法。

三.最优代码解

Best Practics.png

第一种方法的话,思路和我们相同。
第二种的话我是第一次碰到这个库,容我花时间研究下再来补上

四.总结

这题几乎没什么难度,就是计数判断而已。所以也没啥好总结的啦,不过这个operator库倒是有点意思啦,到时候花点时间学习下。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容