回溯算法part02
LC组合总和II
- 终止条件,sum==n且mid.size()==k加入result。其他终止条件sum>=n或者mid.size()>=k也结束
- 一样可以引入剪枝操作进行优化,其实sum>=n也可以算是剪枝操作的一部分
LC17电话号码的字母组合(超时5min)
- 超时原因分析
- switch函数不够熟练,switch(x){case y:xxx; case m:xxx;}
- 回溯的思想运用不够熟练
- 这道题for循环横向遍历的是digits[index]数字对应的字符串的长度,递归深度纵向遍历的是digits的长度
- 终止条件:index==digits.length(),result加入mid
- 代码
- 暴力思想:有助于了解递归的参数index含义
- 优化
- 使用String数组下标来获取数字和字母的映射
- 使用String数组下标来获取数字和字母的映射