← 返回题库
中级

拓扑排序

未完成
中级参考 代码结构已给出,请填写 ____ 处
def solve(____):
    from collections import defaultdict, deque
    n = int(____)
    graph = defaultdict(____)
    in_degree = [____] * n
    for e in edges.split(____):
        u, v = map(int, e.split(____))
        graph[u].append(____)
        in_degree[v] += ____
    queue = deque([i for i in range(____) if in_degree[i] == ____])
    result = []
    while queue:
        node = queue.popleft()
        result.append(____)
        for neighbor in graph[node]:
            in_degree[neighbor] -= ____
            if in_degree[neighbor] == ____:
                queue.append(____)
    print('____'.join(map(____)))

示例

输入
solve('0,1;0,2;1,2', 3)
期望输出
0 1 2
Python 代码 🔒 登录后使用
🔒

登录后即可练习

注册免费账号,在浏览器中直接运行 Python 代码