Leetcode練習(Python):回溯算法類:第46題:全排列:給定一個 沒有重復 數字的序列,返回其所有可能的全排列。


題目:
全排列:給定一個 沒有重復 數字的序列,返回其所有可能的全排列。
思路:
使用回溯算法的模板。
程序:
class Solution:
    def permute(self, nums: List[int]) -> List[List[int]]:
        result = []
        auxiliary = []
        def backtrack(nums, auxiliary, result):
            if len(auxiliary) == len(nums):
                result.append(auxiliary[:])
                return 
            for index in range(len(nums)):
                if nums[index] in auxiliary:
                    continue
                auxiliary.append(nums[index])
                backtrack(nums, auxiliary, result)
                auxiliary.pop()
        backtrack(nums, auxiliary, result)
        return result


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



猜您在找 Leetcode練習(Python):回溯算法類:第47題:全排列 II:給定一個可包含重復數字的序列,返回所有不重復的全排列。 Leetcode練習(Python):字符串類:第17題:電話號碼的字母組合:給定一個僅包含數字 2-9 的字符串,返回所有它能表示的字母組合。 給出數字到字母的映射如下(與電話按鍵相同)。注意 1 不對應任何字母。 Leetcode練習(Python):數組類:第78題:給定一組不含重復元素的整數數組 nums,返回該數組所有可能的子集(冪集)。 說明:解集不能包含重復的子集。 回溯算法詳解[力扣46:全排列] Leetcode練習(Python):數組類:第54題:給定一個包含 m x n 個元素的矩陣(m 行, n 列),請按照順時針螺旋順序,返回矩陣中的所有元素。 Leetcode練習(python):字符串類:第93題:復原IP地址:給定一個只包含數字的字符串,復原它並返回所有可能的 IP 地址格式。 有效的 IP 地址正好由四個整數(每個整數位於 0 到 255 之間組成),整數之間用 '.' 分隔。 Leetcode練習(Python):哈希表類:第3題:給定一個字符串,請你找出其中不含有重復字符的 最長子串 的長度。 Leetcode練習(Python):數學類:第168題:Excel表列名稱:給定一個正整數,返回它在 Excel 表中相對應的列名稱。 Leetcode練習(Python):數組類:第85題:給定一個僅包含 0 和 1 的二維二進制矩陣,找出只包含 1 的最大矩形,並返回其面積。 Leetcode練習(Python):哈希表類:第49題:字母異位詞分組:給定一個字符串數組,將字母異位詞組合在一起。字母異位詞指字母相同,但排列不同的字符串。
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM