diff --git "a/\347\256\227\346\263\225\346\200\235\347\273\264\347\263\273\345\210\227/\345\233\236\346\272\257\347\256\227\346\263\225\350\257\246\350\247\243\344\277\256\350\256\242\347\211\210.md" "b/\347\256\227\346\263\225\346\200\235\347\273\264\347\263\273\345\210\227/\345\233\236\346\272\257\347\256\227\346\263\225\350\257\246\350\247\243\344\277\256\350\256\242\347\211\210.md" index 192d4cfdfd7baf53b967a64c8dfbc60df5d389c2..aa6cb0b8750ad838a6ab763604a47f72e441df0e 100644 --- "a/\347\256\227\346\263\225\346\200\235\347\273\264\347\263\273\345\210\227/\345\233\236\346\272\257\347\256\227\346\263\225\350\257\246\350\247\243\344\277\256\350\256\242\347\211\210.md" +++ "b/\347\256\227\346\263\225\346\200\235\347\273\264\347\263\273\345\210\227/\345\233\236\346\272\257\347\256\227\346\263\225\350\257\246\350\247\243\344\277\256\350\256\242\347\211\210.md" @@ -278,6 +278,28 @@ def backtrack(...): ![labuladong](../pictures/labuladong.png) +[Zongshuai](https://github.com/zongshuai818) 提供全排列 Python3解法代码: + +```python +class Solution: + def permute(self, nums: List[int]) -> List[List[int]]: + # 回溯算法 + result = [] + track = [] # 可行路径 + def trackBack(nums_, track_): + if len(track_) == len(nums_): # 满足终止条件 + result.append(track_[:]) + return + for i in nums_: #所有可选项 + if i in track_: # 判断是否可选 + continue + track.append(i) # 选择 + trackBack(nums_, track_) # 递归 + track.pop() # 回溯 + trackBack(nums, track) + return result +``` + [上一篇:动态规划答疑篇](../动态规划系列/最优子结构.md) [下一篇:二分查找解题框架](../算法思维系列/二分查找详解.md)