我试图获得这种复杂度O(n)。 重复之前的所有步骤等于TO(1)+重复T(n)= O(n)。
lis = []
class Solution:
def isHappy(self, n: int) -> bool:
numbers_list = [int(num)**2 for num in str(n)]
numbers_sum = sum(numbers_list)
if numbers_sum == 1:
lis.clear()
return True
if numbers_sum in lis:
lis.clear()
return False
lis.append(numbers_sum)
return self.isHappy(numbers_sum)