美文网首页
(topsort)310. 最小高度树

(topsort)310. 最小高度树

作者: 来到了没有知识的荒原 | 来源:发表于2021-08-02 12:17 被阅读0次

310. 最小高度树

class Solution {
public:
    vector<int> findMinHeightTrees(int n, vector<vector<int>> &edges) {
        vector<vector<int>> g(n);
        vector<int> d(n);
        for (auto e:edges) {
            int a = e[0], b = e[1];
            g[a].push_back(b), g[b].push_back(a);
            d[a]++, d[b]++;
        }
        queue<int> q, tmp;
        for (int i = 0; i < n; i++) {
            if (d[i] <= 1)q.push(i);
        }

        while (q.size()) {
            tmp = q;
            queue<int> nxt;
            while (q.size()) {
                int u = q.front();
                d[u]--;
                q.pop();
                for (auto i:g[u]) {
                    if (--d[i] == 1)nxt.push(i);
                }
            }
            q = nxt;
        }
        vector<int> res;
        while (tmp.size()) {
            res.push_back(tmp.front());
            tmp.pop();
        }
        return res;
    }
};

相关文章

  • (topsort)310. 最小高度树

    310. 最小高度树[https://leetcode-cn.com/problems/minimum-heigh...

  • 310. 最小高度树 - 每日一题

    310. 最小高度树 - 力扣(LeetCode) (leetcode-cn.com)[https://leetc...

  • 310. 最小高度树

    对于一个具有树特征的无向图,我们可选择任何一个节点作为根。图因此可以成为树,在所有可能的树中,具有最小高度的树被称...

  • 310. 最小高度树

    题目描述 树是一个无向图,其中任何两个顶点只通过一条路径连接。 换句话说,一个任何没有简单环路的连通图都是一棵树。...

  • [中等]310. 最小高度树

    解题思路需要反复思考

  • 最小高度树

    题目: 题目的理解: 看到题目的时候还是觉得很奇怪的,觉得有很多很多可能性啊。当去搜索了二叉搜索树的定义后明白了思...

  • LeetCode题解之最小高度树

    最小高度树 题目描述 给定一个有序整数数组,元素各不相同且按升序排列,编写一个算法,创建一棵高度最小的二叉搜索树。...

  • leetcode 310 最小高度树 python

    评论区说容易超时,就使用了字典和最小堆来进行加速

  • LeetCode310.最小高度树

    对于一个具有树特征的无向图,我们可选择任何一个节点作为根。图因此可以成为树,在所有可能的树中,具有最小高度的树被称...

  • 2020-10-21:最小高度树

    310:最小高度树 题目:对于一个具有树特征的无向图,我们可选择任何一个节点作为根。图因此可以成为树,在所有可能的...

网友评论

      本文标题:(topsort)310. 最小高度树

      本文链接:https://www.haomeiwen.com/subject/ovztvltx.html