数据结构- c++无向图
data structures - C++ undirected graphs
在过去的几天里,我搜索了很多关于这个主题的内容,我不明白如何在没有权重的情况下制作无向图。谁能告诉我应该用哪个结构和一个简单的算法?提前感谢!!
没有任何特定的要求强迫你给你的边赋予权重。您的邻接矩阵可以有二进制条目1-0或真-假来指定节点之间的连接。所有的图算法都是正常的。
一个关于图表的非常有用的讲座:http://www.youtube.com/watch?v=ylWAB6CMYiY
对p.r.的回答略加阐述。标准矩阵表示可以很容易地解释为顶部(东北)是从上到左(B到A),左边是从左到上(西南,这里没有)。任何位置的1(1)(可能是布尔值)表示未加权连接。
x A B C D
A 0 1 0 0
B 0 0 1 1
C 0 0 0 1
D 0 0 0 0
表示A没有连接到任何节点。B与a相连,C与B相连,D与B、C相连。
这个特殊的例子将创建一个树,以D为根,有子树B和C, a是B的子树a和C叶。
注意,unweighted属性实际上并没有简化多少。只在一个纯指针实现练习,但这是相当毫无意义的FAPP。用adjacency list
代替这个adjacency matrix
可能会给您带来内存使用方面的优势。
相关文章:
- 链表,反向函数,数据结构
- 如何使用set实现无序数据结构?
- 我们可以将数据永久保存为数据结构吗?
- C++中的可变长度数组/数据结构
- 用于存储由空格分隔的字符串的 C++/C 数据结构
- 通过 NIF 从C++返回自定义数据结构
- 编译器上的策略数据结构不起作用
- 尝试构建"lock-free"数据结构C++
- 设计将引用元素移动到开头的数据结构.C++
- 在学习数据结构之前对STL有一个了解是好的吗?
- 如何解析表示树状数据结构的字符串
- 我对数据结构、双向链表有一些问题
- googletest:测试太大的数据结构
- C++中deque数据结构的大O是什么?
- 我可以使用哪种数据结构来处理这种方式
- 将文本文件解析为树状数据结构
- C++ 中具有 O(1) 搜索时间复杂度的数据结构
- 哪些存储了不完整类型的 STL 数据结构可以用作类成员?
- C++,您能否设计一种数据结构,将指针保存在连续内存中并且不会使它们失效?
- 带参数的数据结构的全局声明