当前位置: 首页 > article >正文

刷题笔记day27-回溯算法1

理论基础

77. 组合

class Solution:
    path: list = list()
    result: List[List[int]] = list()
    def traversal(self, left: int, n: int, k: int):
        # 终止条件
        if (len(self.path) == k):
            # 这里面需要用浅拷贝,而不能是引用
            self.result.append(copy.copy(self.path))
            # print(self.path)
            return 
        
        # 2、迭代所有
        for i in range(left, n+1):
            self.path.append(i)
            self.traversal(i+1, n, k)
            del self.path[-1]
        
        return 


    def combine(self, n: int, k: int) -> List[List[int]]:
        # 先清空,避免多轮测试
        self.path.clear()
        self.result.clear()
        self.traversal(1, n, k)
        return self.result

http://www.kler.cn/news/135297.html

相关文章:

  • Linux CentOS 8(MariaDB的数据类型)
  • GEE21:基于MODIS数据获取逐年GPP、EVI和FVC数据
  • 数据结构——栈与队列
  • 将Agent技术的灵活性引入RPA,清华等发布自动化智能体ProAgent
  • 【Qt开发流程之】布局管理
  • Linux安装RabbitMQ详细教程
  • mysql使用--子查询
  • 使用量子玻尔兹曼机推进机器学习:新范式
  • 自然语言处理:Transformer和GPT
  • 数智赋能,众创众治|易知微为“浙江省数字监管应用建模技能竞赛”提供技术支撑!
  • git使用记录
  • 大数据架构
  • pipeline + node +jenkins+kubernetes部署yarn前端项目
  • Qt给控件添加图片
  • 牛客--求最小公倍数python
  • 动手学深度学习——循环神经网络的从零开始实现(原理解释+代码详解)
  • python绘图常见问题及解决方法总结
  • C编译环境和预处理(非常详细,建议收藏)
  • 【智能家居】5、主流程设计以及外设框架编写与测试
  • 截取某个元素前面的数字
  • 算法必刷系列之位运算
  • 深度学习系列53:mmdetection上手
  • 目标检测标注工具AutoDistill
  • RK3588平台开发系列讲解(项目篇)嵌入式AI的学习步骤
  • UML统一建模语言
  • rk3588编译lunch出错
  • 广州华锐互动VRAR:利用VR开展刑事案件公安取证培训,沉浸式体验提升实战能力
  • 第十一周任务总结
  • mysql无法访问故障排除步骤
  • 【Zabbix】Zabbix Agent 2在Ubuntu/Debian系统上的安装