내 코드에서 그래프의 도달 가능한 버텍스를 계산하는 데 문제가 있습니다.그래프에서 버텍스의 도달 가능한 버텍스 찾기
는 I는 I가 자신과 B로 에지를 갖는다 따라서 1 정점 다음 방법
a = Vertices()
a.Reachable = [1,2]
b = Vertices()
b.Reachable = [3]
c = Vertices()
c.Reachable= [3]
List = []
List.append(a)
List.append(b)
List.append(c)
의 그래프를 작성 그래프
class Vertices():
number = 0
def __init__(self):
Vertices.number += 1
self.number = Vertices.number
self.Reachable= []
다음 코드를 갖는다. b와 c의 경우도 마찬가지입니다.
이 목록에 도달하는 우리는 정점 목록의 예를 사용하여 그래프 주위를 이동할 수 있습니다 [트랜스-1] 트랜스은이 그래프에서 지금 Reachable list of a (List[0] and List[1])
을 의미 어디 각각의 정점, 즉에 대한 접근 가능성을 계산해야 예를 들어, a, b, c에 도달 할 수 있습니다.
나는 모든 목록에서 깊이 우선 검색을 수행 할 수 있다고 읽었습니다. 계속 진행하는 방법에 대한 해결책을 제게 제공해 줄 수 있습니까?
누구나 세트를 사용하는 방법을 말해 줄 수 있습니까?이 문제와 관련된 조합 및 차이 기능이 있다는 것을 알기에 이상적이라고 생각합니다. 추신 : 이것은 학교 기반 과제가 아닙니다. ....
질문에 관련 태그로 태그를 지정하면 더 많은주의를 얻게됩니다. – matcheek
같은 정점을 여러 번 추가 할 수 있으므로 목록을 사용하여 정점을 저장하면 안되기 때문에 오류가 발생하기 쉽습니다. 사전에서 모든 키는 고유합니다. – matcheek
@matcheek 같은 꼭지점을 어떻게 정의합니까? 사전 { 'A': [ 'B', 'C'], 'B': [ 'B', 'C']} 같은 도달 가능한 버텍스가있는리스트에 2 개의 꼭지점을 저장하는 것으로서 –