当前位置:   article > 正文

Java | Leetcode Java题解之第332题重新安排行程

Java | Leetcode Java题解之第332题重新安排行程

题目:

题解:

  1. class Solution {
  2. Map<String, PriorityQueue<String>> map = new HashMap<String, PriorityQueue<String>>();
  3. List<String> itinerary = new LinkedList<String>();
  4. public List<String> findItinerary(List<List<String>> tickets) {
  5. for (List<String> ticket : tickets) {
  6. String src = ticket.get(0), dst = ticket.get(1);
  7. if (!map.containsKey(src)) {
  8. map.put(src, new PriorityQueue<String>());
  9. }
  10. map.get(src).offer(dst);
  11. }
  12. dfs("JFK");
  13. Collections.reverse(itinerary);
  14. return itinerary;
  15. }
  16. public void dfs(String curr) {
  17. while (map.containsKey(curr) && map.get(curr).size() > 0) {
  18. String tmp = map.get(curr).poll();
  19. dfs(tmp);
  20. }
  21. itinerary.add(curr);
  22. }
  23. }
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/人工智能uu/article/detail/980660
推荐阅读
相关标签
  

闽ICP备14008679号