LeetCode: Clone Graph
来源:互联网 发布:idc唯一网络排名 编辑:程序博客网 时间:2024/06/05 03:49
思路: 刚开始用一个DFS方法,不过这题目最好用BFS方法,这篇博客介绍的思路不错,而且代码精简,套用这个模式的code如下:
class Solution { unordered_map<int, UndirectedGraphNode*> m; // m 存储新图中的节点label 和 指针位置public: UndirectedGraphNode *cloneGraph(UndirectedGraphNode *node) { if(node == NULL) return node; queue<UndirectedGraphNode *> Q; Q.push(node); while(!Q.empty()){ UndirectedGraphNode * qFront = Q.front(); Q.pop(); if(m.find(qFront->label) == m.end()) m[qFront->label] = new UndirectedGraphNode(qFront->label); for(int i = 0;i < (qFront->neighbors).size();i++){ if(m.find((qFront->neighbors)[i]->label) == m.end()){// 作为是否已经添加过的标记 m[(qFront->neighbors)[i]->label] = new UndirectedGraphNode((qFront->neighbors)[i]->label); Q.push((qFront->neighbors)[i]); } m[qFront->label]->neighbors.push_back(m[qFront->neighbors[i]->label]); } } return m[node->label]; }};
0 0
- LeetCode[Graph]: Clone Graph
- [LeetCode] CLone Graph
- LeetCode:Clone Graph
- [leetcode]Clone Graph
- Leetcode: Clone Graph
- [LeetCode] Clone Graph
- LeetCode题解:Clone Graph
- [LeetCode]Clone Graph
- leetcode Clone Graph
- leetcode-Clone Graph
- LeetCode | Clone Graph
- Leetcode: Clone Graph
- [LeetCode] Clone Graph
- LeetCode OJ:Clone Graph
- Leetcode Clone Graph
- [Leetcode] Clone Graph (Java)
- Clone Graph - LeetCode
- 【leetcode】Clone Graph
- WP8_读写XML WP8数据存储--独立存储文件
- RotateAnimation
- 【Android笔记】 通用ListView适配器
- java基础总结
- linux input命令学习
- LeetCode: Clone Graph
- 理解 Java 的 GC 与 幽灵引用
- 多线程编程9----使用读写锁模拟hibernate缓存Demo
- 关于JAVA中状态设计模式的讲解示例代码
- JBPM学习(三):管理流程定义
- 【大数问题】 HDOJ 1250 Hat's Fibonacci
- Hello World @Sep 1
- win7 java jdk的安装配置
- 关于不用if,switch,?:语句判断两个数大小及其他