python实现dict版图遍历示例

1123次阅读  |  发布于5年以前

复制代码 代码如下:

_*_coding:utf8

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)

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8