• Lc1436_旅行终点站


    package com.example.demo;
    
    import java.util.ArrayList;
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;
    
    /**
     * 1436. 旅行终点站
     * 给你一份旅游线路图,该线路图中的旅行线路用数组 paths 表示,其中 paths[i] = [cityAi, cityBi] 表示该线路将会从 cityAi 直接前往 cityBi 。请你找出这次旅行的终点站,即没有任何可以通往其他城市的线路的城市。
     * <p>
     * 题目数据保证线路图会形成一条不存在循环的线路,因此只会有一个旅行终点站。
     * <p>
     * <p>
     * <p>
     * 示例 1:
     * <p>
     * 输入:paths = [["London","New York"],["New York","Lima"],["Lima","Sao Paulo"]]
     * 输出:"Sao Paulo"
     * 解释:从 "London" 出发,最后抵达终点站 "Sao Paulo" 。本次旅行的路线是 "London" -> "New York" -> "Lima" -> "Sao Paulo" 。
     * 示例 2:
     * <p>
     * 输入:paths = [["B","C"],["D","B"],["C","A"]]
     * 输出:"A"
     * 解释:所有可能的线路是:
     * "D" -> "B" -> "C" -> "A".
     * "B" -> "C" -> "A".
     * "C" -> "A".
     * "A".
     * 显然,旅行终点站是 "A" 。
     * 示例 3:
     * <p>
     * 输入:paths = [["A","Z"]]
     * 输出:"Z"
     * <p>
     * <p>
     * 提示:
     * <p>
     * 1 <= paths.length <= 100
     * paths[i].length == 2
     * 1 <= cityAi.length, cityBi.length <= 10
     * cityAi != cityBi
     * 所有字符串均由大小写英文字母和空格字符组成。
     */
    public class Lc1436 {
        //找出终点中不在起点的city,对于每一个list,
        public static String destCity(List<List<String>> paths) {
            Map<String, String> map = new HashMap<>();
            for (List<String> list : paths) {
                map.put(list.get(0), list.get(1));
            }
            for (List<String> list : paths) {
                if (map.get(list.get(1)) == null) {
                    return list.get(1);
                }
            }
            return null;
        }
    
        public static void main(String[] args) {
            List<List<String>> lists = new ArrayList<>();
    
            String[][] strArray = {{"B", "C"}, {"D", "B"}, {"C", "A"}};
    
            for (int i = 0; i < strArray.length; i++) {
                List<String> tempList = new ArrayList<>();
                for (int j = 0; j < strArray[i].length; j++) {
                    tempList.add(strArray[i][j]);
                }
                lists.add(tempList);
            }
    
            System.out.println(destCity(lists));
            ;
        }
    }
    
    
  • 相关阅读:
    apicloud 运费计算js+页面
    css让字体细长
    vue 请求完接口后执行方法
    js监听当前页面再次加载
    用apicloud+vue的VueLazyload实现缓存图片懒加载
    git merge和git rebase的区别(转)
    yuan先生博客链接
    django组件之contenttype(一)
    Django的orm中get和filter的不同
    python第三方库requests详解
  • 原文地址:https://www.cnblogs.com/xiaoshahai/p/12922421.html
Copyright © 2020-2023  润新知