Leetcode 494. 目标和

思路 依然是回溯法
func findTargetSumWays(nums []int, target int) int {
	res := 0
	if len(nums) == 0 {
		return 0
	}
	var backTracking func(nums []int, index int, rest int)
	backTracking = func(nums []int, index int, rest int) {
		if index == len(nums) {
			if rest == 0 {
				res++
				return
			} else {
				return
			}
		}
		rest += nums[index]
		backTracking(nums, index+1, rest)
		rest -= nums[index]
		rest -= nums[index]
		backTracking(nums, index+1, rest)
		rest += nums[index]
	}
	backTracking(nums, 0, target)
	return res
}
思路 之后再补一个动态规划的方式

 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号