【力扣TOP100】全排列

题目要求:

思路:

可使用递归的方式。permute(nums)=对permute(nums0:len(nums)-1)的每一个元素,尝试添加元素numslen(nums)-1

代码:

python 复制代码
class Solution:
    def permute(self, nums: List[int]) -> List[List[int]]:
        l=len(nums)
        if l==1:
            return [nums]
        t=self.permute(nums[0:l-1])
        ans=[]
        for v in t:
            for j in range(l-1):
                tt=v[0:j]+[nums[l-1]]+v[j:l-1]
                ans.append(tt)
            ans.append(v+[nums[l-1]])
        return ans
相关推荐
先吃饱再说1 分钟前
一篇吃透树的遍历:递归与迭代的完整拆解
数据结构·算法
进击切图仔4 分钟前
基于千问的白盒蒸馏 SOP
运维·服务器·人工智能·python·效率
2401_868534785 分钟前
案例介绍-小型网络规划及搭
python·计算机网络
ONE_SIX_MIX15 分钟前
lightweight-charts-onesixth v2.8.1 → v3.1.1 更新总览
java·前端·python
YUS云生16 分钟前
Python学习笔记·第29天:Git进阶——分支操作与合并冲突
笔记·python·学习
奋斗的小方29 分钟前
Java进阶篇1-3:集合框架(单列集合)
java·windows·python
Robot_Nav39 分钟前
贪心算法、动态规划与 MPPI 算法结构相关力扣题目汇总
算法·贪心算法·动态规划
乐以礼1 小时前
#100DaysOfAgent Day 5
python·ai
江华森1 小时前
Gephi 可视化 + NetworkX 网络分析——《釜山行》人物关系(三)
数据库·python
进击切图仔1 小时前
基于千问的白盒蒸馏操作教学文档
服务器·人工智能·python