我是Python3的新手,正在嘗試做遞歸powerset函數。它應該使用列表理解。Powerset遞歸,列表理解python3
我寫道:
def powerset(seq):
if not seq:
return [[]]
return powerset(seq[1:]) + [[seq[0]] + n for n in powerset(seq[1:])]
此功能,但我得到的反饋,被告知這是沒有必要調用該函數兩次。它做了很多計算。它應該很容易能夠計算多達20個電力。那我該怎麼辦?沒有兩次調用函數,我無法使它工作。謝謝。
你知道如何將一個函數的返回值保存到一個變量中,然後使用該變量嗎? – user2357112
你的意思是類似res + = res + [[seq [0] + n for powerset(seq [1:])]其中res是一個空列表?還是我完全錯了? – blik3o
不幸的是,完全錯誤。你知道'subset = powerset(seq [1:])'意思嗎? – user2357112