g***j 发帖数: 1275 | 1 先问我如何BFS,我说用queue,然后问我如何在不用任何data structure的情况下BFS
,也不能修改这个tree
还有一个题目,什么情况下用到循环链表? | e****e 发帖数: 418 | 2 1. 多走几遍.
DFS( i ) is to visit the nodes on ith level.
i.e.
1
2 3
4 5 6 7
DFS(1) visits 1
DFS(2) visits 2, 3
DFS(3) visits 4, 5, 6, 7
...
Of course, when you visit 4, 5, 6, 7, you visit 1,2,3 as well, but you only
interests in 4, 5, 6, 7, which are on 3rd level and output 4, 5, 6, 7 as a
result.
2. old data is no longer needed. So overwrite it. i.e. cache?
BFS
【在 g***j 的大作中提到】 : 先问我如何BFS,我说用queue,然后问我如何在不用任何data structure的情况下BFS : ,也不能修改这个tree : 还有一个题目,什么情况下用到循环链表?
| C***U 发帖数: 2406 | 3 我的想法。
开始是一个一位2进制数来走第一层。
然后用一个两位2进制数来走第二层。
依次继续。
然后有一个flag来标记是不是空了,如果空了就停止。
BFS
【在 g***j 的大作中提到】 : 先问我如何BFS,我说用queue,然后问我如何在不用任何data structure的情况下BFS : ,也不能修改这个tree : 还有一个题目,什么情况下用到循环链表?
| p*****2 发帖数: 21240 | 4
这个二进制数有啥用呢?
感觉这题DFS就可以了。
【在 C***U 的大作中提到】 : 我的想法。 : 开始是一个一位2进制数来走第一层。 : 然后用一个两位2进制数来走第二层。 : 依次继续。 : 然后有一个flag来标记是不是空了,如果空了就停止。 : : BFS
|
|