我收到错误消息,指出我定义的“makeShortest”函数存在语法错误。这里有什么问题?是否还有其他问题可能导致该函数在运行时无法工作?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
添加回答
举报
0/150
提交
取消