我有一個列表,我想通過在所有可能的位置添加x 1和0來創建所有列表。例如,假設X = 2和在所有可能的位置添加位
l=[0,1]
首先,我們只需將長度爲2的所有可能的名單在開始給予[0,0,0,1]
,[0,1,0,1]
,[1,0,0,1]
,[1,1,0,1]
。然後我們在開始處放置0或1,在位置2放置0或1,給出[0,0,0,1]
,[0,0,1,1]
,[1,0,0,1]
,[1,0,1,1]
。
然後,我們可以爲列表中可插入兩位的每個可能的位置對執行相同的操作。當然會有很多重複,但我可以使用set
刪除那些重複。
又如,此時,其中x = 1
l=[1,1]
完整輸出應該[0,1,1], [1,0,1], [1,1,0], [1,1,1]
。
有沒有一個聰明的方法來做到這一點?
你能請註明這個數組有什麼'x'的意思?它看起來像它的意圖,以增加它,但你的例子結果說不然。 – Serdalis
@Serdalis x只是說你需要添加多少個1或0。 – felix
有'x = 2'和一個數組而不是x = 4的具體原因嗎? – Serdalis