【力扣TOP100】全排列

题目要求:

思路:

可使用递归的方式。permute(nums)=对permute(nums[0:len(nums)-1])的每一个元素,尝试添加元素nums[len(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
相关推荐
nn在炼金5 分钟前
大模型领域负载均衡技术
人工智能·算法·负载均衡
hashiqimiya16 分钟前
java程序的并发
java·开发语言·python
2301_8119583819 分钟前
浏览器下载huggingface网络连接超时,使用镜像源教程
python·tokenizer
red润26 分钟前
Python环境变量自动配置:实现生产与开发环境无缝切换
后端·python
知识进脑的肖老千啊27 分钟前
LangGraph简单讲解示例——State、Node、Edge
人工智能·python·ai·langchain
falldeep27 分钟前
Pandas入门指南
数据结构·算法·leetcode·pandas
natide32 分钟前
表示/嵌入差异-4-闵可夫斯基距离(Minkowski Distance-曼哈顿距离-欧氏距离-切比雪夫距离
人工智能·深度学习·算法·机器学习·自然语言处理·概率论
ulias21241 分钟前
多态理论与实践
java·开发语言·前端·c++·算法
闲看云起43 分钟前
Leetcode-day4:从「移动零」到「盛最多水的容器」
数据结构·算法·leetcode·职场和发展
蹦蹦跳跳真可爱5891 小时前
Python----大模型(GPT-2模型训练,预测)
开发语言·人工智能·pytorch·python·gpt·深度学习·embedding