Advertisement
Guest User

Untitled

a guest
Sep 25th, 2016
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.86 KB | None | 0 0
  1. print('Введите кол-во вершин: ')
  2.  
  3. n = int(input())
  4. graph = [] # пустой массив
  5. visited = [False] * n # массив посещенных вкршин
  6.  
  7. print("Начальная вершина: ")
  8. start = int(input())
  9.  
  10.  
  11. for i in range(n):
  12. row = []
  13. print("Введите %d строку: " % (i))
  14. for j in range(n):
  15. val = int(input()) # вводим элементы строки
  16. row.append(val) # добавляем элементы в конец строки
  17. graph.append(row)
  18.  
  19. def bfs(start):
  20. stack = [start]
  21. while stack:
  22. vertex = stack.pop(0)
  23. if visited[vertex] == False:
  24. visited[vertex] = True
  25. # print("trace: %d" % (vertex))
  26. stack.extend([i for i in range(n) if (graph[vertex][i] == 1 and visited[i] == False)])
  27. return visited
  28. print(bfs(start))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement