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

题目:

题解:

python 复制代码
class Solution:
    def findItinerary(self, tickets: List[List[str]]) -> List[str]:
        def dfs(curr: str):
            while vec[curr]:
                tmp = heapq.heappop(vec[curr])
                dfs(tmp)
            stack.append(curr)

        vec = collections.defaultdict(list)
        for depart, arrive in tickets:
            vec[depart].append(arrive)
        for key in vec:
            heapq.heapify(vec[key])
        
        stack = list()
        dfs("JFK")
        return stack[::-1]
相关推荐
用户83562907805112 分钟前
Python Word 转 PDF 和 PDF 转 Word 指南
后端·python
用户83562907805122 分钟前
如何使用 Python 加密和保护 Word 文档
后端·python
Fluxproxy35 分钟前
AI数据集采集、批量模型推理报错频发?AI项目网络稳定性优化实战
python·ai·ai编程
hanlin031 小时前
动态规划专练:力扣第121、122题
笔记·算法·leetcode
To_OC1 小时前
LC 74 搜索二维矩阵:换皮的二分查找,我居然一开始没看出来
javascript·算法·leetcode
Fanta丶1 小时前
10.Python class类的定义和魔术方法
python
玖玥拾1 小时前
LeetCode 189 轮转数组
算法·leetcode
小玮看世界3 小时前
[Python]从“脏”数据到优雅实现:一个IoT滑动窗口最大值问题的测试驱动优化实录
linux·前端·python
MC皮蛋侠客3 小时前
SQLAlchemy 系列(十一):从 1.x 到 2.x——渐进迁移与数据访问层治理
数据库·python
魔镜前的帅比4 小时前
(开源项目)x-claw (设计)
python·ai·rust·开源