【力扣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
相关推荐
文丑颜不良啊4 小时前
LeetCode1941~1960题目解析
java·leetcode
❁满城风絮*4 小时前
Claude Code 学习总结
python·agent·claude
维克兜率天7 小时前
【维克】复合型CTA:趋势+套利的双轮驱动
python·学习方法
伞伞悦读7 小时前
【第76期】两张3行表左连接变5行:主键、validate与未匹配排查完整教程
人工智能·python
用户8356290780518 小时前
使用 Python 在 Excel 中添加和自定义迷你图
后端·python
老师我太想进步了20268 小时前
【数据结构-4】算法美学之顺序表
数据结构·算法
用户8356290780518 小时前
使用 Python 在 Excel 图表中添加趋势线与回归方程
后端·python
风影同志783248 小时前
编码器是激活函数吗?—— 一个看起来很像、其实不是的类比
算法
特立独行的猫A8 小时前
一份 Markdown 发十个平台:cspub 一稿多投
java·后端·python
UIU1148 小时前
P1481 魔族密码
c++·算法·动态规划