Hard deck/reindexing d2

028 : 트리의 지름 구하기

서버관리자 페페 2023. 6. 23. 10:46

 

 

 

 

가중치를 사용하기 위해 Edge Class를 구현했더라도(ArrayList<Edge>[] TP) 와 달리 BFS에서는 Edge를 가져와 pointer로만 탐색 사용, Patch로 value를 사용해도 된다(반은 넣고 반은 사용)

 

* 하나의 BFS시작에서 먼 노드, 그리고 그 노드에서 반대 방향으로 먼 노드 2개만 판단하므로,

중복해서 업데이트 할 필요가 없다

(D patch시 if 조건 X) 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

불순물은 if pipeLine으로 따로 빼 둬서 만약 -1이 있다면 자동으로 해당 위상 공간으로 흘러갈 것이다. 그러므로 나머지 정제된 것은 원래대로 바로 값들을 TP로 넣어주면 된다

(단방향 작업)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BFS는 Print작업이 아닌, D만 건드려서 업데이트한다

 

BFS(시작) + 먼곳의 pointer

BFS(먼곳) + 다음 먼곳 Print

 

'Hard deck > reindexing d2' 카테고리의 다른 글

015 : 버블 정렬  (0) 2023.06.23
025 : DFS 친구관계 파악하기  (0) 2023.06.23
010 : Deque + Sliding Window  (0) 2023.06.22
012 : Stack으로 오큰수 구하기  (0) 2023.06.21
013 : Queue를 이용한 카드 게임  (0) 2023.06.21