python实现dict版图遍历示例
#_*_coding:utf_8_
import sys
import 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 2
1 3
1 4
3 2
2 6
4 3
3 5
4 5
6 5
3 6
output:
1 2 6 5 3 4
上一篇: PHP中比较时间大小实例