中级农民
- 积分
- 113
- 大米
- 颗
- 鳄梨
- 个
- 水井
- 尺
- 蓝莓
- 颗
- 萝卜
- 根
- 小米
- 粒
- 学分
- 个
- 注册时间
- 2020-2-6
- 最后登录
- 1970-1-1
|
刷题第24天
46. Permutations 这题需要用backtrack递归来解,关键是设计好递归函数的收敛条件,input,用关键字in来判断每个数字是否在temp列表里,最后当temp列表长度与原始nums相等即可收敛。
47. Permutations II 这题比Permutation更加tricky,主要是因为有重复的数字,思路还是backtrack递归,关键是要设置boolean数组来记录每个变量有没有被使用过,对于和前一位一样但是没有被使用过的数字要略过,另外一开始要对数组进行排序。
48. Rotate Image 这道题是medium的,关键是想明白什么是rotate,它和行列的坐标的关系是什么,一开始想的是把第一行变成最后一列,第二行变成倒数第二列。。。后来发现要in place,想到的是设置一个temp,然后先选中4个角,再按顺序旋转后面的,后来发现还有更霸气的算法,先上下翻转再转置就行了,这样只要实现一个swap就可以in place旋转了,记得上下翻转和转置的时候设好行列指针的区间即可。 |
|