BFS 找联通量,找component.
Number of Islands (BFS, DFS 都可以做)
Surrounded Regions (BFS, DFS都可以做)
Union Find 找联通量是最合适的方法:对于动态加入的时候,尤其有效果;
Number of Connected Components in an Undirected Graph (BFS, DFS, Union Find 都可以做)
Graph Valid Tree (BFS, Union Find 都可以做) BFS做的时候,一定要判断edge == nodes - 1, 收集到的node数量是n;
Level Order minimum distance 都会用到层级关系;int size = queue.size(); for(int i = 0; i < size; i++);
Binary Tree Level Order Traversal
Binary Tree Level Order Traversal II
Binary Tree Zigzag Level Order Traversal
Binary Tree Vertical Order Traversal (用两个queue,一个收集node,一个收集col的index,min max收集最小col和最大col);
==== minimum distance ====== 层级关系;int size = queue.size(); for(int i = 0; i < size; i++);
Rotting Oranges 注意到空层的时候,step也加1了,最后return的时候需要减去1;
Word Ladder
Remove Invalid Parentheses
Topological Sort
Course Schedule
Course Schedule II
Dijkstra
Pacific Atlantic Water Flow
Cheapest Flights Within K Stops