Python | Leetcode Python题解之第46题全排列

题目:

题解:

python 复制代码
class Solution:
    def permute(self, nums):
        """
        :type nums: List[int]
        :rtype: List[List[int]]
        """
        def backtrack(first = 0):
            # 所有数都填完了
            if first == n:  
                res.append(nums[:])
            for i in range(first, n):
                # 动态维护数组
                nums[first], nums[i] = nums[i], nums[first]
                # 继续递归填下一个数
                backtrack(first + 1)
                # 撤销操作
                nums[first], nums[i] = nums[i], nums[first]
        
        n = len(nums)
        res = []
        backtrack()
        return res
相关推荐
XFF不秃头16 分钟前
力扣刷题笔记-三数之和
c++·笔记·算法·leetcode
蒋星熠26 分钟前
WebSocket网络编程深度实践:从协议原理到生产级应用
网络·数据库·redis·python·websocket·网络协议·微服务
带娃的IT创业者29 分钟前
实战:用 Python 搭建 MCP 服务 —— 模型上下文协议(Model Context Protocol)应用指南
开发语言·python·mcp
万粉变现经纪人34 分钟前
如何解决pip安装报错ModuleNotFoundError: No module named ‘python-dateutil’问题
开发语言·ide·python·pycharm·pandas·pip·httpx
跟橙姐学代码1 小时前
Python 类的正确打开方式:从新手到进阶的第一步
前端·python·ipython
c8i1 小时前
关于python中的变量中使用的下划线_总结
python
站大爷IP1 小时前
用Flet打造跨平台文本编辑器:从零到一的Python实战指南
python
MC皮蛋侠客1 小时前
使用python test测试http接口
开发语言·python·http
胡耀超2 小时前
5、Python-NumPy科学计算基础
开发语言·人工智能·python·深度学习·numpy
BIGSHU09232 小时前
java多线程场景3-并发处理和异步请求
java·开发语言·python