請編寫一個遞歸函數,用來輸出n個元素的所有子集。例如,三個元素{a,b,c}的所有子集是:{},{a},{b},{c},{a,c},{ac},{b,c},{a,b,c}.

解題思路: 根據子集的定義,集合中的每一個元素在子集中都有兩種狀態:‘1’表示出現,'0'表示不出現;如果所有的元素都不出現,則該子集是空集, 如果所有的元素都出現,則該子集是全集。 我們定義一個標記數組tag,用於記錄集合中對應的元素是否出現,每層遍歷對應集合中的每個元素,都有出現(爲‘1’)和不出現(爲‘0’) 兩種可能,一直遍歷到所有的元素的可能都標記完,然後根據數組函數輸出結果。 #inc
相關文章
相關標籤/搜索