我的文本使用顶点作为用于表示数组索引的整数。我不确定这是为了简化这个概念,还是在实践中实际使用它。
他们在现实世界中的表现如何?数组索引的整数?地图键的对象?
也许有人还可以添加一些现实世界的图形应用程序/库,以便了解它们的代表方式?
答案 0 :(得分:0)
以Python列表的形式将图表表示为边缘列表(顶点1,顶点2)的最简单方法是
graph = [[1,2],[2,3],[1,3],....,[1,5]]
或类似的(这里的数字仅作为示例。在现实生活中,您可能想要使用图形数据库(图形的NoSQL存储类型),如Neo4J(使用java实现,请参阅http://neo4j.com/)或cayley(已实现)使用go)https://github.com/google/cayley
答案 1 :(得分:0)
使用所需的最低要求。如果整数满足您的需要,那么使用它们。 如果每个节点需要额外的数据,请使用一些对象。 您也可以为节点使用整数和对象,并确保整数从0开始是连续的。
那是节点(顶点)。
对于边缘,您有很少的数据结构,邻接列表,邻接矩阵,边缘列表,关联矩阵以及可能很少的其他。在有关算法的书籍中阅读有关它们的更多信息或wikipedia。
答案 2 :(得分:0)
如何连接两个人/事物/节点。它们之间的关系是什么。 facebook就是它的一个很好的例子。
考虑这些问题
1)Number of mutual friends you have with your friend "Harry"
。
2)using google maps, tell me the shortest path to reach from place A to place B
所有这些问题都是基于图表的。 我建议你解决邻接列表和矩阵的图形问题,你将知道何时使用哪种表示。