@w1024020103
        
        2017-05-20T03:34:27.000000Z
        字数 400
        阅读 1119
    CS61B


基本上照着参考写就没问题.
注意到:MazeDepthFirstPaths里面dfs(int v)方法体内有recursion来达到找到target就terminate的题目要求:
dfs(w);if (targetFound) {return;}
然而MazeBreadthFirstPaths的bfs(int s)方法体内并没有bfs的recursion,用
if(targetFound)
就没什么用,因为根本不会循环执行,targetFound这个boolean变量始终没更新。所以我采用了if(marked(t))来判断是不是到达终点,如果到达就terminate.
Queue是一个interface,不是class,不能new. 但可以用
Queue q = new PriorityQueue<>()
等具体的实施方法来实施。

