我正在尝试编写基本的回溯代码段,但清单出现错误。在调用该函数之前,我已经在底部创建了列表,但是列表分配索引仍然超出范围!
我试图通过说arr = []来使列表为空,但似乎无济于事。
def printStrings(n, arr, i):
if n == i:
pass
arr[i] = 0
printStrings(n, arr, i+1)
arr[i] = 1
printStrings(n, arr, i+1)
if __name__ == "__main__":
n = 4
arr = [None] * n
printStrings(n, arr, 0)
我期望当我写arr = [None] * n时初始化列表,但是我猜它不会创建具有4个索引的列表。请帮忙。谢谢
答案 0 :(得分:0)
if n == i:
pass
将pass
更改为return
。