1436. Destination City

1436. Destination City #

题目 #

  • 给你一份旅游线路图,该线路图中的旅行线路用数组 paths 表示,其中 paths[i] = [cityAi, cityBi] 表示该线路将会从 cityAi 直接前往 cityBi 。请你找出这次旅行的终点站,即没有任何可以通往其他城市的线路的城市*。*

  • 题目数据保证线路图会形成一条不存在循环的线路,因此恰有一个旅行终点站。

思路 #

模拟+哈希 #

代码 #

模拟+哈希 #

class Solution {
    public String destCity (List<List<String>> paths) {
        Set<String> start = new HashSet<>();
        Set<String> end = new HashSet<>();
        for (List<String> path: paths) {
            /** consider start */
            start.add(path.get(0));
            if (end.contains(path.get(0))) end.remove(path.get(0));
            
            /** consider end */
            if (start.contains(path.get(1)) == false) end.add(path.get(1));
            else if (end.contains(path.get(1))) end.remove(path.get(1));
        }
        String ans = "";
        for (String str: end) ans = str;
        return ans;
    }
}

致谢 #

宫水三叶