我很难理解 Python 列表切片的空间复杂性。
对于类似的东西
arr[2:] = arr[2:][::-1]
Run Code Online (Sandbox Code Playgroud)
是为切片分配了新空间(就像在字符串中完成的那样,因为它们是不可变的)还是在同一个数组上完成了操作?
对于类似的事情:
ans = [i+1 for i in range(n)]
for i in range(k):
ans[i:] = ans[i:][::-1]
Run Code Online (Sandbox Code Playgroud)
空间复杂度会是多少?它会与 ans 是字符串时不同还是相同,例如ans = '12345...n'?