今天我从大学图书馆得到了一本很酷的书,Magnus Lie Hetland的Python算法,在这本书的第二章中,他创建了一个邻接列表,这有点酷:
a,b,c,d,e,f,g,h = range(8)
N = [{b,c,d,e,f},{c,e},{d},{e},{f},{c,g,h},{f,h},{f,g}]当我这么做的时候
N[a],我得到了N的第一个元素,这让我有点惊讶,它是如何以这样的方式被映射的?
我发现了这个问题,但这与我所问的不一样,但如果是重复的话,请告诉我。
Adjacency List and Adjacency Matrix in Python
谢谢你,普瑞特
发布于 2017-02-14 02:05:56
只是Python。
a,b,c,d,e,f,g,h = range(8)是元组作业。它将0赋值给a,1赋给b,等等。
N = [{b,c,d,e,f},{c,e},{d},{e},{f},{c,g,h},{f,h},{f,g}]创建一个名为N的数组,其中第0‘元素是set {b,c,d,e,f},等等。
所以当你说N[a]的时候,你也是在说N[0],这就是你看到的场景。
这是用Python硬编码来构建常量图的一个很酷的技巧,但是如果您需要根据另一个算法的输入或输出动态地构建图形,那么您将需要一个不同的表示。
https://stackoverflow.com/questions/42216593
复制相似问题