摘要:題目描述注意題目解讀找出所有的子集。思路確定子集的來源,遍歷原始列表,每一個元素都往已有的子集列表里邊添加,同時添加到已有的子集中去,產(chǎn)生新的子集。類似于動態(tài)規(guī)劃思想,依賴于之前的東西產(chǎn)生現(xiàn)在的東西。
題目描述
Given a collection of integers that might contain duplicates, nums, return all possible subsets (the power set).
注意
Note: The solution set must not contain duplicate subsets.
Example:
Input: [1,2,2] Output: [[2],[1],[1,2,2],[2,2],[1,2],[]]
題目解讀:
找出所有的子集。
思路:
確定子集的來源, 遍歷原始列表,每一個元素都往已有的子集列表里邊添加,同時添加到已有的子集中去,產(chǎn)生新的子集。 類似于動態(tài)規(guī)劃思想,依賴于之前的東西產(chǎn)生現(xiàn)在的東西。
class Solution: # @param num, a list of integer # @return a list of lists of integer def subsetsWithDup(self, S): res = [[]] S.sort() for i in range(len(S)): if i==0 or S[i]!=S[i-1]: l=len(res) for j in range(len(res)-l,len(res)): res.append(res[j]+[S[i]]) return res if __name__=="__main__": st=Solution() S=[1,2,2] S=[0] result=st.subsetsWithDup(S)
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/42182.html
摘要:題目要求可以先參考關(guān)于的這篇博客再看接下來的內(nèi)容。思路一鏈表的形式我們可以通過例子,,,來說明。在遞歸中我們會將起始下標(biāo)后的值依次加入當(dāng)前結(jié)果集,并將結(jié)果集加入結(jié)果集數(shù)組中。如果遇到重復(fù)的數(shù)字,則繼續(xù)遍歷下一個數(shù)字,直至遍歷結(jié)束。 題目要求 Given a collection of integers that might contain duplicates, nums, retur...
Subsets Problem 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. Example ...
摘要:不同數(shù)包含重復(fù)數(shù)為的時候,表示在外層的循環(huán)正在被使用,所以當(dāng)前循環(huán)遇到為一定要跳過。對當(dāng)前循環(huán)要添加的數(shù)組,在添加當(dāng)前元素后進(jìn)行遞歸,遞歸之后要將當(dāng)前元素的使用標(biāo)記改為,表示已經(jīng)使用和遞歸完畢,然后再將這個元素從的末位刪除。 Subsets Problem Given a set of distinct integers, nums, return all possible subse...
摘要:寫這個系列是因?yàn)榧o(jì)念一下去年的今天,就是年的月號,刷題第一天,今天是一周年紀(jì)念日。排除,就是返回一空的。復(fù)雜度分析算法課講過,這個復(fù)雜度是指數(shù)次,能實(shí)現(xiàn)出來就行了,沒法優(yōu)化。復(fù)雜度分析不分析了,反正指數(shù)次。 Subsets 寫這個系列是因?yàn)榧o(jì)念一下去年的今天,就是2015年的9月14號,刷題第一天,今天是一周年紀(jì)念日。當(dāng)時只敢做easy還得抄答案的我想啥時候能做上medium啊,事到如...
摘要:深度優(yōu)先搜索復(fù)雜度時間空間遞歸棧空間思路這道題可以轉(zhuǎn)化為一個類似二叉樹的深度優(yōu)先搜索。另外需要先排序以滿足題目要求。新的集合要一個新的,防止修改引用。 Subset I Given a set of distinct integers, nums, return all possible subsets. Note: Elements in a subset must be in n...
閱讀 3538·2021-11-22 15:22
閱讀 3328·2019-08-30 15:54
閱讀 2724·2019-08-30 15:53
閱讀 783·2019-08-29 11:22
閱讀 3529·2019-08-29 11:14
閱讀 2073·2019-08-26 13:46
閱讀 2210·2019-08-26 13:24
閱讀 2277·2019-08-26 12:22