目录
前言
踏平坎坷成大道,斗罢艰险又出发!
自律的尽头是自控,自控的尽头是硬控。
愿道友们披荆斩棘,终能得偿所愿。
简介
本人是小几年经验的前端开发,算法基础只有力扣几十道题,非常薄弱。
今天是个人的代码随想录算法硬控自己第16天,开启回溯。
题目链接:77. 组合
犯了一个错误,在js里,把一个数组push到另一个数组里的时候,要用arr2.push([...arr1])而不能arr2.push(arr1),前者是拷贝副本,后者只是拷贝了引用,拷贝引用的后果就是arr1变化的时候拷贝进去的arr2里的arr1也在变。
题目链接:216. 组合总和 3
这题注意剪枝,这里剪枝的原理是如果当前遍历的元素已经大于需要的目标总和也就是n了,那么直接return,因为已经没有意义了。
题目链接:17. 电话号码的字母组合
这是组合问题里的小变形,不再是一个集合里去重求组合,而是从两个集合里分别取元素,因此回溯函数不再传进去startIndex,而是index,index这里表示当前到了哪个电话号码,比如digits是'23', index为0就是当前处理的是'2'也就是对应着的'abc'。
标签:题目,组合,随想录,arr1,字母组合,拷贝,链接 From: https://blog.csdn.net/RayLobeCode/article/details/142330116