python教程 实现dict版图遍历

代码如下:

#_*_coding:utf_8_import sysimport os

class graph(): def __init__(self, v, e): self.v = v self.e = e self.visited = [] self.dict = {} self.fd = open(“input.txt”) def initgraph(self): self.visited = [0 for i in range(self.v+1)] for i in range(self.e): f, t = map(int, self.fd.readline().split()) #f, t = map(int, sys.stdin.readline().split()) if self.dict.has_key(f)==false: l = [] l.append(t) self.dict[f] = l else: l = self.dict[f] l.append(t) self.dict[f] = l def dfsgraph(self, src): self.visited[src] = 1 print src , if self.dict.get(src): #self.dict[src]会出现异常 for u in self.dict[src]: if self.visited[u]==0: self.dfsgraph(u)graph = graph(6, 10)graph.initgraph()graph.dfsgraph(1)

nput.txt

代码如下:

1 21 31 43 22 64 33 54 56 53 6

output:

代码如下:

1 2 6 5 3 4

发表评论