leetcode-310. Minimum Height Trees
来源:互联网 发布:数据汇总日语怎么说 编辑:程序博客网 时间:2024/04/30 11:20
考察点:图,遍历,bfs,路径;
思路:这个题就是从叶子节点开始遍历,去除掉当前所有的叶子节点后,再从新图的叶子节点开始遍历,直到最后剩下一个或者两个叶子节点,就是最深的那个点。
C++ 代码:
class Solution {public: vector<int> findMinHeightTrees(int n, vector<pair<int, int>>& edges) { unordered_map<int, unordered_set<int>> mp; vector<int> leaves; if (n == 1) { leaves.push_back(0); return leaves; } for (auto &item : edges) { mp[item.first].insert(item.second); mp[item.second].insert(item.first); } queue<int> q; int level[n]; for (int i=0; i<n; i++) { if (mp[i].size() == 1) { leaves.push_back(i); } } while (n > 2) { n -= leaves.size(); vector<int> nextleaves; for (int i=0; i<leaves.size(); i++) { int nextNode = *(mp[leaves[i]].begin()); mp[leaves[i]].erase(nextNode); mp[nextNode].erase(leaves[i]); if (mp[nextNode].size() == 1) { nextleaves.push_back(nextNode); } } leaves = nextleaves; } return leaves; }};
0 0
- Leetcode 310. Minimum Height Trees
- [leetcode] 310. Minimum Height Trees
- 310. Minimum Height Trees LeetCode
- leetcode 310. Minimum Height Trees
- LeetCode *** 310. Minimum Height Trees
- 【LeetCode】310. Minimum Height Trees
- [leetcode] 310.Minimum Height Trees
- leetcode-310. Minimum Height Trees
- [leetcode] 310. Minimum Height Trees
- 【LeetCode】310. Minimum Height Trees
- LeetCode 310. Minimum Height Trees
- Leetcode 310. Minimum Height Trees
- [LeetCode]310. Minimum Height Trees
- Leetcode: 310.Minimum Height Trees
- 【Leetcode】310. Minimum Height Trees
- LeetCode 310. Minimum Height Trees
- leetcode-310. Minimum Height Trees
- Leetcode 310. Minimum Height Trees
- SpringMVC 限流
- cloudera manager
- 欢迎使用CSDN-markdown编辑器
- PostgresDBlink 数据库跨库查询
- GNU make项目管理学习笔记
- leetcode-310. Minimum Height Trees
- 170509面试小问题
- 将linux下c程序移植到windows并作为服务启动
- 正则表达式表单验证
- Storm并行度编程
- phantomjs的自定义配置
- android应用开发-从设计到实现 4-1 开发产品
- Git命令大全
- 数据结构List实例(二): 调整奇偶次序