发布于: 2024-8-22最后更新: 2024-9-1字数 00 分钟

type
status
date
slug
summary
tags
category
icon
password

494. 目标和

已解答
中等
相关标签
相关企业
给你一个非负整数数组 nums 和一个整数 target 。
向数组中的每个整数前添加 '+' 或 '-' ,然后串联起所有整数,可以构造一个 表达式 :
  • 例如,nums = [2, 1] ,可以在 2 之前添加 '+' ,在 1 之前添加 '-' ,然后串联起来得到表达式 "+2-1" 。
返回可以通过上述方法构造的、运算结果等于 target 的不同 表达式 的数目。
示例 1:
示例 2:
提示:
  • 1 <= nums.length <= 20
  • 0 <= nums[i] <= 1000
  • 0 <= sum(nums[i]) <= 1000
  • 1000 <= target <= 1000
数组 nums 的每个元素都可以添加符号 + 或 -,因此每个元素有 2 种添加符号的方法,n 个数共有 种添加符号的方法,对应 种不同的表达式。当 n 个元素都添加符号之后,即得到一种表达式,如果表达式的结果等于目标数 target,则该表达式即为符合要求的表达式。
可以使用回溯的方法遍历所有的表达式,回溯过程中维护一个计数器 count,当遇到一种表达式的结果等于目标数 target 时,将 count 的值加 1。遍历完所有的表达式之后,即可得到结果等于目标数 target 的表达式的数目。
 

集合的所有子集(一)_牛客题霸_牛客网 (nowcoder.com)

描述

现在有一个没有重复元素的整数集合S,求S的所有子集
注意:
你给出的子集中的元素必须按升序排列
给出的解集中不能出现重复的元素
数据范围:1≤n≤51≤n≤5,集合中的任意元素满足 ∣val∣≤10∣val∣≤10
要求:空间复杂度 O(n!)O(n!),时间复杂度 O(n!)O(n!)

示例1

输入: [1,2,3]复制
返回值: [[],[1],[2],[3],[1,2],[1,3],[2,3],[1,2,3]]复制

示例2

输入: []复制
返回值: []

Loading...
刷题记录——广搜

🗒️刷题记录——广搜