您好,登錄后才能下訂單哦!
【題目描述】
Given a list of numbers, return all possible permutations.
Notice:You can assume that there is no duplicate numbers in the list.
給定一個(gè)數(shù)字列表,返回其所有可能的排列。
注意:你可以假設(shè)沒(méi)有重復(fù)數(shù)字。
【題目鏈接】
http://www.lintcode.com/en/problem/permutations/
【題目解析】
遇到這種問(wèn)題,很顯然,第一個(gè)想法我們首先回去想到DFS,遞歸求解,對(duì)于數(shù)組中的每一個(gè)元素,找到以他為首節(jié)點(diǎn)的Permutations,這就要求在遞歸中,每次都要從數(shù)組的第一個(gè)元素開始遍歷,這樣,,就引入了另外一個(gè)問(wèn)題,我們會(huì)對(duì)于同一元素訪問(wèn)多次,這就不是我們想要的答案了,所以我們引入了一個(gè)bool類型的數(shù)組,用來(lái)記錄哪個(gè)元素被遍歷了(通過(guò)下標(biāo)找出對(duì)應(yīng)).在對(duì)于每一個(gè)Permutation進(jìn)行求解中,如果訪問(wèn)了這個(gè)元素,我們將它對(duì)應(yīng)下表的bool數(shù)組中的值置為true,訪問(wèn)結(jié)束后,我們?cè)僦脼閒alse.
時(shí)間復(fù)雜度分析: 這道題同Combination,所以對(duì)于這道題的解答,時(shí)間復(fù)雜度同樣是
O(n!)
【答案鏈接】
https://www.jiuzhang.com/solutions/permutations/
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。