이산수학 D0조별 프로젝트 #4    Syntax of Languages             조장 : 2113315 정민정               조원 : 2009 허규준                 20113281...
-목차-1. 개인별 업무2. 일정계획3. 회의록4. 기본자료5. 알고리즘6. 초안7. 문제점 & 해결방안8. 최종소스9. 결과분석10. 시, 공간 복잡도11. 참고문헌 및 출처
-개인별업무-11정민정      (조장) 회의록작성 및 보고서 작성, 일정 계획, 알고리즘 설계09허규준                소스 구현, 복잡도 계산11김정무                소스 구현, 복잡도 계산1...
-회의록-회의일시    2012년 4월 25일(수)                조    D0          작성자   11 정민정참석자     09허규준, 11정민정, 11김정무, 11김종진, 11김슬기        ...
회의일시    2012년 5월 9일(수)                 조    D0          작성자   11 정민정참석자     09허규준, 11정민정, 11김정무, 11김종진, 11김슬기        내용   ...
-기본 자료- 그래프의 기본그래프의 정의DEF) 그래프(graph or general graph)는 다음 세 조건을 만족하는 순서쌍(ordered triple)G=(V,E,φ)이다.       1. V≠Φ       2...
DEF) G=(V,E,φ)인 그래프라고 하자.     1. 만약 φ(e)={u,v}인 모서리가 e가 존재할 때, 꼭지점 u,v를 서로 접한다(adjacent)       또는 이웃한다(neighbors)라고 한다.   ...
<모서리 edge>다면체에서 각 면의 경계를 이루고 있는 선분들.다면체를 이루고 있는 평면다각형을 다면체의 면(面), 두 면에 공통인 다각형의 변을 다면체의모서리, 다각형의 꼭지점을 다면체의 꼭지점이라 한다. 이 모서리...
출발점이 a에서 a로 동일하고 모든 간선을 통과했죠? 오일러 순회가 존재한다는걸 확인할 수 있습니다.위의 그림은 간선이 간선의 1, 2, 3으로 나타나 있습니다. 출발점이 a일때a->1->b->2->a->3->b 와 같...
이 그래프는 차수가 홀수인 정점이 D와 C 2개가 존재합니다. 즉 둘다들어왔다가 안나가는 경우가 존재한다는 겁니다. 이렇다면 당연히 순회는안되겠죠.경로는 차수가 홀수인 정점이 딱 2개 밖에 없기 때문에 만드실 수 있습니다.
직접 따라 그려보시면 방 C에서 출발해서 바깥 D로 나가고 다시 방으로들어오지 않는 걸 볼 수 있죠< 단순 그래프 simple graph>DEF) 단순 그래프는 다음 조건을 만족하는 순서쌍 G=(V,E)이다. 단, V는...
즉, 그래프 G =( V , E )가 주어진 모든 정점들을 정확하게 한번만 경유해서 하나의 경로가있는 그래프를 우리는 Hamilton경로가 존재한다고 한다고 한다.더욱이 그래프에서 모든 정점들을 포함하는 사이클을 우리는...
<최소비용 신장 트리, 미니멈 스패닝 트리 minimum spanning tree>그래프의 각 변에 weight 비용이 주어질 경우 신장 트리들 중에 비용이 최소인 것을 말한다.<이진 트리 binary tree>한 노드...
높이 균형 트리(Height Balanced Tree)-2진 트리에서 왼쪽 서브트리의 높이와 오른쪽 서브트리의 높이의 차이가 1 이하인 트리를 말한다.완전 높이 균형 트리(Completely Height Balanced...
-참고 문헌 및 출처--출처-http://ko.wikipedia.org/wiki - 그래프 이론 용어, 해밀턴 경로.http://blog.daum.net/math52/6022073 - 해밀턴 경로.http://warmz...
Upcoming SlideShare
Loading in...5
×

Mst 구하기

486

Published on

그래프 , MST 구현하기

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
486
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Mst 구하기"

  1. 1. 이산수학 D0조별 프로젝트 #4 Syntax of Languages 조장 : 2113315 정민정 조원 : 2009 허규준 20113281 김정무 20113283 김종진 2011 김슬기
  2. 2. -목차-1. 개인별 업무2. 일정계획3. 회의록4. 기본자료5. 알고리즘6. 초안7. 문제점 & 해결방안8. 최종소스9. 결과분석10. 시, 공간 복잡도11. 참고문헌 및 출처
  3. 3. -개인별업무-11정민정 (조장) 회의록작성 및 보고서 작성, 일정 계획, 알고리즘 설계09허규준 소스 구현, 복잡도 계산11김정무 소스 구현, 복잡도 계산11김종진 소스 구현, 복잡도 계산11김슬기 관련사항 조사 -일정계획- 4/25 업무분담 및 문제파악 조사내용 정리 및 이해, 보고서 초안 작성기본적인 알고리즘 및 ~5/1 프로그램 설계5/1~5/9 기본적인 알고리즘 및 프로그램 설계 최종 프로그램 설계 및 문제점 파악 해결방안 모색 및 최종 보고서 5/9~ 작성
  4. 4. -회의록-회의일시 2012년 4월 25일(수) 조 D0 작성자 11 정민정참석자 09허규준, 11정민정, 11김정무, 11김종진, 11김슬기 내용 비고 1.조원별 업무분담 조장과 프로그램설계 2명, 관련사항 조사 2명으로 팀을 구성했다. 2.일정 계획 다음 회의시간까지 자신이 맡은 업무를 수행해 와서 서로의 정보를 교환하고 문제 해 결을 위해 토의하기로 함. 3.보고서 계획 회의내용 소집단보고서작성 및 자신들이 참고한 자료들과 출처를 조장에게 보내고 조장이 보고 서 초안을 작성하기로 하였다. 4.알고리즘 계획 다음 회의시간에 서로 맡은 업무에 충실히 연구를 하여 어떻게 알고리즘을 짤 것인지 에 대해 토의하기로 함.
  5. 5. 회의일시 2012년 5월 9일(수) 조 D0 작성자 11 정민정참석자 09허규준, 11정민정, 11김정무, 11김종진, 11김슬기 내용 비고 1.일정 확인 자료조사 거의 완료되었으므로 각자의 개인 소집단 보고서와 조사한 내용들을 모으기 로 했다. 2.알고리즘 토의 회의내용 기본 알고리즘을 바탕으로 소스를 어떻게 구현할 것인가에 대하여 토의하였다. 3.보고서 토의 개인 소집단 보고서와 자료조사내용과 그 출처, 기본 알고리즘과 소스를 추가하여 최 종 보고서를 작성하기로 했다.
  6. 6. -기본 자료- 그래프의 기본그래프의 정의DEF) 그래프(graph or general graph)는 다음 세 조건을 만족하는 순서쌍(ordered triple)G=(V,E,φ)이다. 1. V≠Φ 2. V∩E=Φ 3. φ:E→P(V)는 모든 e∈E에 대해 |φ(e)|={1,2}인 사상이다. 이 때, V의 원소들을 G의 꼭지점(vertices), E의 원소들을 변(또는 모서리, 선)(edges)라고 하며, 사상 φ는 변의 사상(edgmap)이라고 한다. 또한 φ(e)의 꼭지점들을 e의 끝점(endvertices)라고 한다. 바로 위 그림이 그래프의 한 예이다. 꼭지점들을 w,r,s,u,y가 되겠고, 변들의 집합은{(u,w),(w,r),(r,s),(s,y),(y,r),(u,y)}이겠다. 이런 그래프가 어디에 쓰이느냐. 사실 그래프 이론은 이산수학의 한 갈래로서 비교적 현대에크게 발달한 분야이다. 특히 컴퓨터 자료처리 쪽이나 전기공학 회로 쪽에서 깊이 응용되고 있으며, 더 나아가 사람들 간의 네트워크를 분석하는 데에도 최근 널리 사용되고 있다. 기본적인 용어들을 조금 더 살펴보자.
  7. 7. DEF) G=(V,E,φ)인 그래프라고 하자. 1. 만약 φ(e)={u,v}인 모서리가 e가 존재할 때, 꼭지점 u,v를 서로 접한다(adjacent) 또는 이웃한다(neighbors)라고 한다. 2. 모서리 e,f에 대해 φ(e)∩φ(f)≠Φ가 성립하면 모서리 e,f는 서로 접한다(adjacent) 고 한다. 3. 만약 꼭짓점 u∈φ(e)이면, u는 모서리 e에 부수적(incident)이라고 한다. 즉, u가 e의 끝점이라는 뜻이다. 4. 어떤 모서리 e에 대해 끝점이 동일하다면, 루프(loop)라고 한다. 즉, 이 때 |φ(e)|=1. 5. 만약 |F|≥2이고, 모든 f∈F가 같은 끝점을 가질 때, F⊂E는 다중모서리(multipleedges or parallel edges)라고 한다. 6. 만약 어떤 꼭짓점 u가 어떤 모서리의 끝점도 아니라면, u는 고립(isolated)되었다 고 한다. 다소 직관적인 이름의 정의들이다. 그리고 특별한 언급이 없는 한, 아니 최소한 기초 수준의그래프이론에서는, 별 언급이 없는 한 그래프는 모두 유한그래프(finite graph)로 간주한다. 참고로, 꼭짓점이나 모서리의 집합 중 하나라도 무한한 개수의 원소를 가지면 무한그래프(infinitegraph)라고 한다.<꼭짓점 vertex>두 개 이상의 반직선, 포물선, 곡선이 만나서 이루는 정점이다. 삼각형은 세 개의 꼭짓점을 갖고있다정점(頂點)이라고도 한다. 평면 위의 1점 O를 끝점으로 하는 2개의 반직선 OA, OB를 그 평면위에 그었을 때, ∠AOB의 점 O를 각의 꼭지점이라 한다. 또, 2개의 반직선 OA, OB를 각의 변이라 한다. 다각형에서는 둘레의 두 변이 만나는 점이 꼭지점이며, 1개의 꼭지점에서 만나는 2개의 변이 이루는 내부의 각을 내각(內角)이라 한다. 내각을 때로는 꼭지각이라고도 한다.또, 이등변삼각형에서 꼭지점이라고 할 때는 2개의 등변이 만나는 점을 말하며, 이 꼭지점에 대한 내각을 특히 꼭지각이라 한다. 다면체에서는 3개 이상의 변이 만나는 점을 꼭지점이라 하지만, 각뿔과 원뿔에서 보통 꼭지점이라고 할 때는 밑면에 대한 꼭지점을 말한다.즉, 각뿔의 측면에 있는 각 삼각형의 공통인 꼭지점을 각뿔의 꼭지점, 또 원뿔의 밑면 위에 없는축의 끝점을 원뿔의 꼭지점이라 한다. 또, 포물선과 그 축과의 교점을 포물선의 꼭지점이라 한다. 쌍곡선에서는 2개의 초점을 지나는 직선과 곡선과의 교점이 꼭지점이며, 2개 가지고 있다.타원에서는 장축과 단축이 곡선과 만나는 4점이 꼭지점이다.
  8. 8. <모서리 edge>다면체에서 각 면의 경계를 이루고 있는 선분들.다면체를 이루고 있는 평면다각형을 다면체의 면(面), 두 면에 공통인 다각형의 변을 다면체의모서리, 다각형의 꼭지점을 다면체의 꼭지점이라 한다. 이 모서리 대신에 간단히 ‘변’이라는 말을사용하는 경우도 있다.<다중 그래프 multigraph >글자크기보통 크기로 보기크게 보기가장 크게 보기임의의 정점 쌍에 대하여 여러 개의 간선이 존재하는 그래프.<오일러 경로 Eulerian path>그래프의 모든 변을 단 한 번씩만 통과하는 경로를 뜻한다. 흔히 한붓그리기 문제라고도 한다.위의 그림은 a에서 b로의 경로가 존재하는 것을 알 수 있습니다. 그러나 간선을한번 통과했을 경우 출발점과 도착점이 달라진다는 걸 알 수 있습니다. 고로 이그래프는 오일러 순회는 존재하지 않습니다.위의 그림은 어떤가요? 출발점을 a로 잡았을 때, 모든 간선을 통과하는 경우는a->1->b->2->a가 되겠죠?
  9. 9. 출발점이 a에서 a로 동일하고 모든 간선을 통과했죠? 오일러 순회가 존재한다는걸 확인할 수 있습니다.위의 그림은 간선이 간선의 1, 2, 3으로 나타나 있습니다. 출발점이 a일때a->1->b->2->a->3->b 와 같이 갈수 있습니다. 자 간선들을 한번씩만 보면출발점과 도착점이 다르다는 걸 알 수 있죠?자 이로 한가지 유추해낼 수 있는 건- 간선이 1개 : 오일러 경로 존재, 순회 없음(출발과 끝이 다름)- 간선이 2개 : 출발과 끝이 같음(순회 존재)- 간선이 3개 : 오일러 경로 존재, 순회 없음 (출발과 끝이 다름)….이를 일반화 시켜 보죠.- 간선이 1개 : 정점의 차수가 1- 간선이 2개 : 정점의 차수가 2- 간선이 3개 : 정점의 차수가 3- 간선이 4개 : 정점의 차수가 4…앞서 결과에서 간선이 1개일 때와 3개일 때 순회가 존재하지 않는다는 걸알았습니다. 나가는 경로가 있으면 들어오면서 끝이 나야 순회가 존재하겠죠.여기서, 하나의 규칙을 발견할 수 있습니다. 오일러 순회가 존재하기 위해서는들어가는 걸로 끝나는 정점의 차수가 홀수개인 정점이 존재해서는 안되겠죠?따라서 다음 2개의 법칙이 성립합니다.
  10. 10. 이 그래프는 차수가 홀수인 정점이 D와 C 2개가 존재합니다. 즉 둘다들어왔다가 안나가는 경우가 존재한다는 겁니다. 이렇다면 당연히 순회는안되겠죠.경로는 차수가 홀수인 정점이 딱 2개 밖에 없기 때문에 만드실 수 있습니다.
  11. 11. 직접 따라 그려보시면 방 C에서 출발해서 바깥 D로 나가고 다시 방으로들어오지 않는 걸 볼 수 있죠< 단순 그래프 simple graph>DEF) 단순 그래프는 다음 조건을 만족하는 순서쌍 G=(V,E)이다. 단, V는 공집합이 아닌 꼭지점의 집합, E는 V의 두 원소를 부분집합으로 가지는 부분집합들의 집합이다. 조건. E⊆{X:X⊆V,|X|=2}={(u,v):u,v∈V,u≠v} 즉, 풀어 말하면, 단순그래프는 루프를 가지지 않는 그래프이다.<경로 길이 path of length k>노드의 경로 길이는 해당 노드에서 루트까지의 edge의 수를 의미한다.<순환 Cycle>시작점과 끝점이 연결된 경로. 그래프의 시작점과 끝점이 연결되었다면 그래프가 순환한다고 한다.<그래프가 연결되었다 A graph is connected>어떤 그래프에 속한 임의의 두 꼭짓점에 대해 각 꼭짓점을 양 끝점으로 하는 경로가 존재할 경우, 그 그래프를 연결된 그래프라고 한다.<해밀턴 경로 Hamiltonian circuit>어떤 그래프에서 모든 꼭짓점을 단 한번만 지나는 경로를 의미한다.
  12. 12. 즉, 그래프 G =( V , E )가 주어진 모든 정점들을 정확하게 한번만 경유해서 하나의 경로가있는 그래프를 우리는 Hamilton경로가 존재한다고 한다고 한다.더욱이 그래프에서 모든 정점들을 포함하는 사이클을 우리는 Hamilton 사이클이라고 하며, 한모서리를 제외한 경로를 우리는 Hamilton 경로라고 한다.주어진 그래프 G =( V , E )에서 , Hamilton경로가 있는가를 확인하려면 다음을 검토하여야한다.1. 만일 그래프 G가 Hamiltion 경로를 갖는다면, V에 속한 모든 정점들의 차수는 2보다 크다.즉 deg(v) ≥2.2.만일 V에 속하는 정점 a에 대해 deg(a) =2 이면, 정점 a에 연관된 두 개의 모서리들은 당연히 그래프 G에 대한 Hamilton경로에 속하는 모서리이다.3. 만일 V에 속하는 정점 a에 대해 deg(a) = 2 이면, 정점 a에 연관된 두 개의 모서리는 그래프 G의 Hamilton 경로에 속하는 간선에서 제외된다.4. 그래프 G에서 Hamilton 경로를 찾는 과정에서 , 그래프의 모든 정점들을 포함하지 않는 부분 그래프에서 경로를 얻을 수 없다.<트리 tree>순환하지 않으며, 꼭짓점 사이에 간선이 하나만 있는 그래프를 tree라고 한다.<신장 트리, 스패닝 트리 spanning tree>그래프 안에 있는 모든 정점을 다 포함하면서 트리가 되는 연결된 부분 그래프이다.
  13. 13. <최소비용 신장 트리, 미니멈 스패닝 트리 minimum spanning tree>그래프의 각 변에 weight 비용이 주어질 경우 신장 트리들 중에 비용이 최소인 것을 말한다.<이진 트리 binary tree>한 노드가 최대 두 개의 자식 노드를 가지는 트리를 뜻한다. 보통 첫 번째 노드를 부모 노드라고 하며 자식 노드는 왼쪽(left)과 오른쪽(right)으로 불린다.이진 트리에는 포화 이진 트리(Full Binary Tree), 완전 이진 트리(Complete Binary Tree), 높이 균형 트리(Height Balanced Tree), 완전 높이 균형 트리(Completely Height BalancedTree)가 있다.포화 이진 트리(Full Binary Tree)- 모든 레벨의 노드가 꽉 차있는 이진 트리.- 단말 노드를 제외한 모든 노드의 차수가 2인 형태를 말한다.완전 이진 트리(Complete Binary Tree)- 단말 노드들이 트리의 왼쪽부터 차곡차곡 채워진 형태.- 무조건 왼쪽부터 채워져 있어야 한다.(왼쪽 하위 트리 중 하나라도 비워져있다면 해당 안 됨)
  14. 14. 높이 균형 트리(Height Balanced Tree)-2진 트리에서 왼쪽 서브트리의 높이와 오른쪽 서브트리의 높이의 차이가 1 이하인 트리를 말한다.완전 높이 균형 트리(Completely Height Balanced Tree)-2진 트리에서 왼쪽 서브트리의 높이와 오른쪽 서브트리의 높이가 같은 트리를 말한다.
  15. 15. -참고 문헌 및 출처--출처-http://ko.wikipedia.org/wiki - 그래프 이론 용어, 해밀턴 경로.http://blog.daum.net/math52/6022073 - 해밀턴 경로.http://warmz.tistory.com/619 - 이진트리

×