LeetCode--1436--旅行终点站

题目描述:
给你一份旅游线路图,该线路图中的旅行线路用数组 paths 表示,其中 paths[i] = [cityAi, cityBi] 表示该线路将会从 cityAi 直接前往 cityBi 。请你找出这次旅行的终点站,即没有任何可以通往其他城市的线路的城市。
题目数据保证线路图会形成一条不存在循环的线路,因此只会有一个旅行终点站。
输入:
paths = [[“London”,“New York”],[“New York”,“Lima”],[“Lima”,“Sao Paulo”]]
paths = [[“B”,“C”],[“D”,“B”],[“C”,“A”]]
输出:
Sao Paulo
A
题意:
题目描述
题解
map记录一下然后去找
代码:

class Solution {
     
    public String destCity(List<List<String>> paths) {
     
        String ed = "",st = paths.get(0).get(0);
        HashMap<String,String> mp = new HashMap<>();
        int size = paths.size();
        for(int i = 0; i < size; i ++){
     
            mp.put(paths.get(i).get(0),paths.get(i).get(1));
        }
        while(true){
     
            if(mp.containsKey(st)){
     
                st = mp.get(st);
            }
            else{
     
                ed = st;
                break;
            }
        }
        return ed;
    }
}

你可能感兴趣的:(暴力枚举,面试,算法)