本文共 820 字,大约阅读时间需要 2 分钟。
题目描述:
You are given an odd-length array of integers, in which all of them are the same, except for one single number. Complete the method which accepts such an array, and returns that single different number. The input array will always be valid! (odd-length >= 3) Examples
[17, 17, 3, 17, 17, 17, 17] ==> 3
这个题目就是去一个给定的长度为奇数的数组中找出一个同其他数字都不相同的数字,有且只有一个。
用了最笨的方法,就是设key=arr[0]
,然后让他同数组中的其他数字依次比较,来找出那个不一样的数字。代码如下: def stray(arr): key = arr[0] for i in range(1, len(arr)): if key == arr[i]: pass elif i == len(arr)-1: return arr[i] elif arr[i] != arr[i+1]: return arr[i] else: return key
解决这个题可以很简单,一个语句就可以解决了。使用python3中的count()
函数:
def stray(arr): return min(arr, key=arr.count)
count()
用了返回子字符串在字符串中出现的个数。
转载地址:http://tmmws.baihongyu.com/