[英]what is the Time Complexity of a nested loop in a recursive function?
我有一个带有嵌套循环的递归函数。我在寻找时间复杂度是多少? 这是函数
def csFirstUniqueChar(input_str,letter = 0,num = 1):
if letter == len(input_str):
return -1
for x in range(len(input_str)):
if x == letter:
continue
if input_str[x] == input_str[letter]:
num += 1
if num == 1:
return letter
else:
return csFirstUniqueChar(input_str,letter + 1,1)
假设n
是input_str
的长度。 该算法在最坏的情况下可以递归迭代n
次,即每次递归调用letter
都会增加1
并且可以一直持续到n
。 在每次迭代中,最坏的情况是O(n)
(完全运行循环)。 因此,时间复杂度为O(n^2)
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.