難度 中等
這道題也是比較簡單的肴捉,選個喜歡的算法搜索就可以了痢站。我用了深度搜索吻贿,因為代碼簡單些省時間鳍怨。
執(zhí)行用時 :2 ms, 在所有 Java 提交中擊敗了79.57%的用戶
內(nèi)存消耗 :39.7 MB, 在所有 Java 提交中擊敗了100.00%的用戶
HashSet<Integer> roomSet = new HashSet<Integer>();
public boolean canVisitAllRooms(List<List<Integer>> rooms) {
visitRoom(rooms, 0);
if(roomSet.size() == rooms.size()){
return true;
}else{
return false;
}
}
public void visitRoom(List<List<Integer>> rooms, Integer roomNo){
if(roomSet.contains(roomNo)){
return;
}
roomSet.add(roomNo);
List<Integer> keys = rooms.get(roomNo);
for(int i = 0; i < keys.size(); i++){
visitRoom(rooms, keys.get(i));
}
}