def findTarget(myList, target):
count = 0
for item in myList:
if (target == item):
count = count + 1
return count
我被告知这是0(日志)n 虽然我相信这是0(1)?有人可以确认还是否认?
答案 0 :(得分:7)
你的循环有N
个比较且少于N
个加法 - 最多可以进行2 * N次操作,从而为你提供O(N)算法。
请注意,对于列表,这是一个内置方法:
myList.count(item)
会将循环推送到C
代码 - 它仍然是O(N),但我敢打赌,该版本将比你的版本运行更快:)。
答案 1 :(得分:2)
循环为O(n)
,其中n
是myList
的长度。