랜만 공 깨고! 료 구 리를 록 겠다.^^;
3. ¶
~cpp
런 모 Undirected Graph가 다고 가다.
2
/ |
0 - 1 |
| /
3
볼 런..--;
V = { 0, 1, 2, 3 }
E = { (0,1), (1,3), (1,2), (2,3) }
3.1. 배 ¶
- 2 배로 다. Adjacency Matrix(맞나?--;)
- 먼 Undirected Graph
| 0 | 1 | 2 | 3 | |
| 0 | 0 | 1 | 0 | 0 |
| 1 | 1 | 0 | 1 | 1 |
| 2 | 0 | 1 | 0 | 1 |
| 3 | 0 | 1 | 1 | 0 |
~cpp
2
/ |
0 <- 1 |
| /
3
* .... 기가 군..--; 든 < Vertex1, Vertex2 > 런 다.
* 만 Vertex1 -> Vertex2 방로 Edge가 다면 < Vertex1, Vertex2 > 렇게 단 말다.
* 를 그릴 는 관로 로 면
* <1,0>, <2,1>, <3,1>, <3,2>
- 로 그리면
| 0 | 1 | 2 | 3 | |
| 0 | 0 | 0 | 0 | 0 |
| 1 | 1 | 0 | 0 | 0 |
| 2 | 0 | 1 | 0 | 0 |
| 3 | 0 | 1 | 1 | 0 |
3.2. 리 ¶
- Adjacency List(Linked List로 )
| 0 | -> | 1 | X | ||||||
| 1 | -> | 0 | - | -> | 2 | - | -> | 3 | X |
| 2 | -> | 1 | - | -> | 3 | X | |||
| 3 | -> | 1 | - | -> | 2 | X |
3.3. 배로 Graph 리로 Graph 교 ¶
- 두 Vertex Edge가 나?
- 는 메모리 ( n개 Vertices, e개 Edges )
- 배 : θ(n^2) - n X n 개 배 당 n^2 --;
- 리 : 리로 된 그래 보면 Head Node 는 n개가 고 Head Node로부 뻗나는 Node 는 2*e 개가 다. θ(n+e) 고로 리가 리단 말다.
- 배 : θ(n^2) - n X n 개 배 당 n^2 --;
- 가더 : Weighted Graph 법
- 배 : 1대 Weight를 다.
- 리 : 드를 나 가. (귀다)
- 배 : 1대 Weight를 다.
- 결론 : 뭐가 더 낳다 꼴다 그런 만.. 구 리과 같 부 것 따볼때 배 는게 것 같단 말다!
4. 기본 ¶
- Traversal()
- Depth First Search(리말로 깊 ) : 물 나다는 말다. 가다가 막면 빽. (또는 귀). 로 돌면 난답다.
- Breadth First Search(리말로 ) : Vertex를 다. 뺍다. 기 Vertex를 다 다. 부 빼면 그 노드 결된 Vertex를 가다. Queue가 게 되면 나는 랍다. 리 면 그게 바로 Level Order가 되는 것란 말.
- Depth First Search(리말로 깊 ) : 물 나다는 말다. 가다가 막면 빽. (또는 귀). 로 돌면 난답다.
5. 리(Minimum Cost Spanning Trees) ¶
- Weighted Graph , Vertex 막 Vertex까 끊 게 그린다.
- Kruskal's Algorithm
- Edge들 Cost 로 Sort(것부)
- Edge들 따라 나 결다. 결다가 Cycle 기면 그것 말고 다. 다 면 그만둔다.
- Edge들 Cost 로 Sort(것부)
- Prim's Algorithm
- Vertex를 나 다.
- 기 Edge 가 것 다.
- 그 Edge Vertex Vertex Edge 가 다.
- 반복다.
- Vertex를 나 다.
6.1. Single Source, All Destination(나 모든 곳로 Shortest Path를 구 단말다) ¶
- Dijkstra's Algorithm
~cpp
Start Vertex : 4 -> S = {4}
dist[3] = 1500
dist[5] = 250 3,5 는 4 결되
dist[others] = 무대
-> dist[5]가 가 다. 5를 S 는다.
...
....
반복다.










