我收到錯誤消息,指出我定義的“makeShortest”函數(shù)存在語法錯誤。這里有什么問題?是否還有其他問題可能導致該函數(shù)在運行時無法工作?def solution(A): idxDict = defaultdict(list) for i in range(len(A)): idxDict[A[i]].append(i) ans = -1 A.sort() if len(A) <= 1: return ans hasAdj = 0 for i in range(len(A) - 1): if A[i] != A[i + 1]: hasAdj += 1 if hasAdj == 1: ans = makeShortest(idxDict[A[i]], idxDict[A[i + 1]]) else: ans = min(ans, makeShortest(idxDict[A[i]], idxDict[A[i + 1]])) return ansdef makeShortest (list1, list2): ans = abs(list1[0] - list2[0]) for k in range(len(list1)): for l in range(len(list2)): ans = min(ans, abs(list1[k] - list2[l]) return ans
在函數(shù)內調用函數(shù)時出錯 (Python)
函數(shù)式編程
2023-07-18 17:45:42