LeetCode讲解篇之39. 组合总和

文章目录

  • 题目描述
  • 题解思路
  • 题解代码

题目描述

在这里插入图片描述

题解思路

首先排序数组,然后开始选择数字,当选择数字num后,在去选择大于等于num的合法数字,计算过程中的数字和,直到选数字和等于target, 加入结果集,若数字和大于target则直接退出当前搜索,因为数字是从小到大排序的,如果当前数字和都大于target了,那么之后的选择过程数字和只会更大,所以之后的搜索为无效搜索,直接剪枝

题解代码

class Solution:def combinationSum(self, candidates: List[int], target: int) -> List[List[int]]:n = len(candidates)candidates.sort()res = []tmp = []sum = 0start = 0def dfs():nonlocal sumnonlocal startfor i in range(start, n):num = candidates[i]if sum + num == target:tmp.append(num)res.append([num for num in tmp])tmp.pop()returnif sum + num > target:returnsum += numtmp.append(num)start = idfs()tmp.pop()sum -= numdfs()                return res

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/345795.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

FreeRTOS 基础知识

这个基础知识也是非常重要的,那我们要学好 FreeRTOS,这些都是必不可少的。 那么就来看一下本节有哪些内容: 首先呢就是介绍一下什么是任务调度器。接着呢就是任务它拥有哪一些状态了。那这里的内容不多,但是呢都是非常重要的。 …

C语言——内存函数【memcpy,memmove,memset,memcmp】

📝前言: 在之前的文章C语言——字符函数和字符串函数(一)中我们学习过strcpy和strcat等用来实现字符串赋值和追加的函数,那么除了字符内容,其他的数据(例如整型)能否被复制或者移动呢…

maya显示方式及视图操作

原始图像: 按数字键2后(平滑效果): 按数字键3后(平滑效果,无原始外边框): 按数字键4后(仅显示边框): 方便选择后面的点、线及面 按数字键5后&…

java多线程(并发)夯实之路-进程与线程深入浅出

进程与线程介绍 进程 程序由指令和数据组成,程序工作时,就会将指令加载至CPU,数据加载至内存,进程就是用来加载指令,管理内存,管理IO的。 当程序运行,磁盘加载这个程序的代码至内存,…

应用在游戏机触摸屏中的触摸感应芯片

触屏游戏机的屏幕是由液晶屏和触控层组成的。触控层分为电容式触屏和电阻式触屏两种。电容式触屏是将悬空电极和屏幕玻璃上的电极组成静电场,当人体接近屏幕时,就会改变静电场分布,从而实现触摸的位置探测。而电阻式触屏则是利用玻璃上的两层电极之间通电形成一个电阻值,当手指…

【PHP AES加解密示例】从入门到精通,一篇文章让你掌握加密解密技术!

一、引言 随着互联网的普及,数据安全问题越来越受到人们的关注。在众多加密算法中,AES(Advanced Encryption Standard)因其高效、安全的特点被广泛应用。本文将通过PHP语言,为大家展示一个简单的AES加解密示例&#x…

计算机毕业设计-----SSH在线电影售票选座版网站平台系统

项目介绍 本项目为前后台项目,首先分为管理员和普通用户,游客。 游客可以进入首页,必须注册成为普通用户才能进行影片的购买。管理员和普通用户进行分权限登录,登录后进入不同页面。 普通用户登录后进入首页,首页有影…

手把手教你用 Stable Diffusion 写好提示词

Stable Diffusion 技术把 AI 图像生成提高到了一个全新高度,文生图 Text to image 生成质量很大程度上取决于你的提示词 Prompt 好不好。 前面文章写了一篇文章:一份保姆级的 Stable Diffusion 部署教程,开启你的炼丹之路 本文从“如何写好…

如何使用Flash模拟EEPROM

目录 1、FLASH与EEPROM简介 2、FLASH模拟EEPROM原理 2.1、EERPOM数据结构 2.2、EERPOM物理结构 在讲解这篇博文前,首先要明白为什么使用Flash存储来模拟EEPROM? 主要有以下几个原因: 成本效益:许多微控制器(MCU)和系统芯片(SoC)内…

MySQL题目示例

文章目录 1.题目示例 1.题目示例 09)查询学过「张三」老师授课的同学的信息 SELECT s.*, c.cname, t.tname, sc.score FROM t_mysql_teacher t, t_mysql_course c, t_mysql_student s, t_mysql_score sc WHERE t.tid c.tid AND c.cid sc.cid AND sc.sid s.sid …

如何使用统计鸟网站统计分析网站流量来源?

统计鸟官网地址:https://www.tongjiniao.com/ 站长必备!网站数据统计,流量监测平台 提供网站数据统计分析、搜索关键词、流量访问来源等服务 深入分析用户点击习惯,为智能化运营网站提供更好的用户体验 目录 一、注册账号信息 二…

Web3的应用发展及其影响

Web3,又被称为去中心化Web,是互联网发展的一个阶段,其核心特点是数据的去中心化和用户自主权。近年来,随着区块链技术的不断成熟,Web3的应用也得到了广泛的关注和发展。在这篇文章中,我们将深入探讨Web3目前…