問題
我正在爲我的迷宮求解器開發一個廣度優先搜索算法,並且它工作至今。我通過複製前一個並追加當前值來跟蹤當前堆棧。創建列表的多個副本的最快方法
由於複製列表需要大量的時間,我想在一個操作中創建列表的多個副本。
我到目前爲止已經
複製列表嘗試,並將其分配給多個變量。
l = [1, 2, 3] a = b = c = l[:] # Just creates references and no individual lists
使用numpy的陣列,
copy
功能(除了list[:]
更快)。
問題
什麼是創建一個列表的多個副本最快的方法?
你真的需要清單嗎?我通常會爲這樣的應用程序尋找[意大利麪條堆棧](https://en.wikipedia.org/wiki/Parent_pointer_tree),並且只有在找到目標後才創建列表,如果我需要列表。 – user2357112
你正在使用'l [:]',所以我假設你想要一個淺拷貝? – stybl
@ user2357112我不需要列表。我將使用哪種數據結構來保存這樣的堆棧?一本字典? – jsmolka