题目:
解析:
决策树:
代码设计:
代码:
写法一:path为全局变量
javaprivate int ret,path,aim; public int findTargetSumWays(int[] nums, int target) { aim = target; dfs(nums,0); return ret; } private void dfs(int[] nums, int pos){ if(pos == nums.length){ if(path == aim) ret++; return; } //添加 '+' path += nums[pos]; dfs(nums,pos+1); path -= nums[pos];//回溯 //添加 '-' path -= nums[pos]; dfs(nums,pos+1); path += nums[pos];//回溯 }
写法二:path作为参数
javaprivate int ret,aim; public int findTargetSumWays(int[] nums, int target) { aim = target; dfs(nums,0,0); return ret; } private void dfs(int[] nums, int pos,int path){ if(pos == nums.length){ if(path == aim) ret++; return; } //添加 '+' dfs(nums, pos+1, path + nums[pos]); //添加 '-' dfs(nums, pos+1, path - nums[pos]); }
穷举vs暴搜vs深搜vs回溯vs剪枝系列一>
robin_suli2025-01-03 23:37
相关推荐
IronMurphy5 小时前
【算法四十三】279. 完全平方数墨染天姬5 小时前
【AI】Hermes的GEPA算法papership6 小时前
【入门级-数据结构-3、特殊树:完全二叉树的数组表示法】smj2302_796826526 小时前
解决leetcode第3911题.移除子数组元素后第k小偶数Beginner x_u7 小时前
链表专题:JS 实现原理与高频算法题总结_深海凉_10 小时前
LeetCode热题100-寻找两个正序数组的中位数旖-旎10 小时前
深搜练习(电话号码字母组合)(3)谭欣辰11 小时前
C++快速幂完整实战讲解Mr_pyx11 小时前
【LeetHOT100】随机链表的复制——Java多解法详解AIFarmer11 小时前
【无标题】

