Advertisement
Guest User

Untitled

a guest
Mar 20th, 2019
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.19 KB | None | 0 0
  1. def __caminhos_incidentes_no_grafo(self):
  2. '''
  3. A partir do grafo dado, cria todos os caminhos dentro desse grafo.
  4. :return: Uma lista com todas os caminhos no formato V + '-' + V
  5. '''
  6. caminhos = []
  7. for i in range(len(self.N)):
  8. for j in range(len(self.N)):
  9. if self.M[i][j] != '-':
  10. if self.M[i][j] >= self.M[i][j]:
  11. if self.M[i][j] != 0:
  12. for k in range(self.M[i][j]):
  13. caminhos.append(self.N[i] + self.SEPARADOR_ARESTA + self.N[j])
  14. return caminhos
  15.  
  16. def __arestas_incidentes_a_cada_vertice(self, vertice, arestas=None):
  17. '''
  18. Essa função tem basicamente o mesmo papel que a função arestas_sobre_vertice. A diferença é que ela filtra
  19. se algum vertice já foi passado antes, e não o adiciona.
  20. :param vertice: o vertice a ser analisado
  21. :param arestas: o conjunto de arestas para ser filtrada do vertice que está sendo analisado
  22. :return: uma lista com as arestas filtradas incidentes no vertice analizado
  23. '''
  24. if arestas == None:
  25. arestas = self.__caminhos_incidentes_no_grafo()
  26. return list(filter(lambda v: v.startswith(vertice) or v.endswith(vertice), arestas))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement