您好,登錄后才能下訂單哦!
【題目描述】
Given a set of distinct integers, return all possible subsets.
Notice:Elements in a subset must be in non-descending order;The solution set must not contain duplicate subsets.
給定一個(gè)含不同整數(shù)的集合,返回其所有的子集
注意:子集中的元素排列必須是非降序的,解集必須不包含重復(fù)的子集
【題目鏈接】
http://www.lintcode.com/en/problem/subsets/
【題目解析】
子集類問題類似Combination,以輸入數(shù)組[1, 2, 3]分析,根據(jù)題意,最終返回結(jié)果中子集類的元素應(yīng)該按照升序排列,故首先需要對原數(shù)組進(jìn)行排序。題目的第二點(diǎn)要求是子集不能重復(fù),至此原題即轉(zhuǎn)化為數(shù)學(xué)中的組合問題。我們首先嘗試使用 DFS 進(jìn)行求解,大致步驟如下:
[1] -> [1, 2] -> [1, 2, 3]
[2] -> [2, 3]
[3]
將上述過程轉(zhuǎn)化為代碼即為對數(shù)組遍歷,每一輪都保存之前的結(jié)果并將其依次加入到最終返回結(jié)果中。
【答案鏈接】
http://www.jiuzhang.com/solution/subsets/
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。