私はPython3が初めてで、再帰的なpowerset関数を実行しようとしています. リスト内包表記を使用する必要があります。
私が書いた:
def powerset(seq):
if not seq:
return [[]]
return powerset(seq[1:]) + [[seq[0]] + n for n in powerset(seq[1:])]
この関数は機能しますが、フィードバックを受け取り、関数を 2 回呼び出す必要はないと言われました。それは多くの計算をしました。最大 20 のべき乗セットを簡単に計算できるはずです。では、どうすればいいですか?関数を 2 回呼び出さないと動作しません。ありがとう。