Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //DFS solution
- //Time: O(n), 4ms
- //Space: O(n)
- class Solution {
- public boolean canVisitAllRooms(List<List<Integer>> rooms) {
- int[] visited = new int[rooms.size()];
- DFS(rooms, visited, 0);
- for(int i : visited) {
- if(i == 0) return false;
- }
- return true;
- }
- private void DFS(List<List<Integer>> rooms, int[] visited, int room) {
- if(visited[room] == 1) return;
- visited[room] = 1;
- for(int key : rooms.get(room)) {
- DFS(rooms, visited, key);
- }
- }
- }
Add Comment
Please, Sign In to add comment