
常见API熟悉使用。
是否会重复:当前递归下,上一个数未使用,必然进入了递归,当前数等于上一个数,再进入递归必然重复
如何去重:
- 先排序,使得重复数相邻
- 判断上一个数是否使用过,如果使用过说明在不同递归层
Hard 题。
如果选择正确的容器来映射关系。
以及注意如何正确初始化一个二维数组:
vector<vector
> exp{ {"MUC", "LHR"}, {"JFK", "MUC"}, {"SFO", "SJC"}, {"LHR", "SFO"} };
自己写的时候,思路还是不够清晰,纠结以下的点,挨个挨个遍历,实际上,每行只能放一个,dfs每一行,再遍历一行的点即可。
check时候,行和列都没问题。怎么检索对角线,要分为左斜和右斜
二刷没问题,学习使用vector写二维数组以及初始化。
Hard 题,双层递归,终止条件判断。
一个个填写,填满找到答案。
二刷通过,当时卡了一下vector的二维数组
vector<vector<char>> board
,用board.size()
则得出行向量的维度,即这个表的行数,board[0].size()
表明一个行向量的维度,即由多少列。注意这题的返回值是bool,而不是具体数值。
BFS模板题。
DFS。