보고서 #4 (1) (제출기한: 10/6) #1 다음 그래프 G에 대해서 답하시오. (2*5 = 10)

Slides:



Advertisements
Similar presentations
내 마음의 버 스 이천신하교회 청년부. 이름 : 한상훈 나이 : 30 살 종교 : 기독교 ( 모태신앙 ) 생활신조 : 인생은 한방 ! 로또나 사자 이상형 : 청순 가련한 모태미녀 특이사항 : 걸그룹 노래에 환장함 식스팩을 갖기엔 슬픈 몸을 타고 남.
Advertisements

독서골든벨 2009 학년도 6 학년 1 학기 6-10 반. 1. 이야기 삼국유사 정대한 원효대사는 수행을 위해 떠나던 중 피곤하여 숲 속에서 잠이 들었다. 잠결에 너무 목이 마른 나머지 어디에 담겨있는 물을 맛있게 마셨나요 ?
두 손 들고 두 손 들고 찬양합니다 두 손 들고 찬양합니다 다시 오실 왕 여호와께 다시 오실 왕 여호와께 두 손 들고 찬양합니다 두 손 들고 찬양합니다 다시 오실 왕 여호와께 다시 오실 왕 여호와께 오직 주만이 나를 다스리네 오직 주만이 나를 다스리네 나 주님만을.
도민 기대수명 연장을 위한 도민 기대수명 연장을 위한. 함 양 군 보 건 소 추 진 배 경추 진 배 경 1 목적 및 목표 2 추진현황과 실적 3 향후 추진계획 4 목 차.
지금은 기도 하는 시간입니다 1. 송구영신예배를 위해서 2. ‘크리스마스 이브’ 행사를 준비하는 교육 기관을 위하여
스택 스택 추상자료형 스택 스택의 구현 스택의 응용 한빛미디어(주).
프로젝트 학습 중간 보고서 군포초등학교부설 지역공동 영재학급 용호초등학교5학년 이창민.
남성에게 있어 조루증은 정말 부끄러우면서도 자신감을 잃게 만들게 합니다
CHAP 1:자료구조와 알고리즘.
현대사회의 여성문제와 여성복지 3조 권경욱 강향원 황대인 변갑수 박창욱 김지현.
세탁기 두 대를 한 번에 조작하고, 집 밖에서도 빨래 돌릴 수 있다면 정말 편하겠죠?
제 6 장 그래프 6.1 그래프의 정의 6.2 용어 및 표현법 6.3 그래프의 표현 방법 6.4 그래프의 순회와 신장 트리
CHAP 1:자료구조와 알고리즘 C로 쉽게 풀어쓴 자료구조 생능출판사 2005.
고교평준화의 득과 실 김영주 이지영 최윤영.
데이터 구조 - 소개 순천향대학교 컴퓨터공학과 하 상 호.
5장. 리스트 리스트 학습목표 목록이나 도표처럼 여러 데이터를 관리할 수 있는 자료형을 추상화
Internet Computing KUT Youn-Hee Han
Internet Computing KUT Youn-Hee Han
쉽게 풀어쓴 C언어 Express 제17장 동적 메모리와 연결 리스트 C Express.
CHAP 10:그래프 순천향대학교 하상호.
CHAP 10 : 그래프 C로 쉽게 풀어쓴 자료구조 생능출판사 학기 데이터구조.
CHAP 10:그래프 C로 쉽게 풀어쓴 자료구조 생능출판사 2005.
CHAP 10 : 그래프 C로 쉽게 풀어쓴 자료구조 Slide 1 (of 62).
제5장 트리.
자료 구조: Chapter 3 배열(1) 순천향대학교 컴퓨터공학과 하 상 호.
자료 구조: Chapter 3 배열(1) 순천향대학교 컴퓨터공학과 하 상 호.
강의 #7 트리(Tree).
스택(stack) SANGJI University Kwangman Ko
자료구조: CHAP 7(3) 트리 순천향대학교 컴퓨터공학과 하 상 호.
자료구조: CHAP 7 이진 탐색 트리 순천향대학교 컴퓨터공학과 하 상 호.
head data link data link data link NULL a b c
강의 #6 큐(Queue).
CHAP 6:큐 C로 쉽게 풀어쓴 자료구조 Slide 1 (of 27).
다음 주 과제 7장 읽어오기 숙제 해서 다음 주(11월 12일) 제출하기. 큐(Queue) E304호,
자료구조: CHAP 4 리스트 (2) 순천향대학교 컴퓨터공학과 하 상 호.
쉽게 풀어쓴 C언어 Express 제17장 동적메모리와 연결리스트 C Express.
Chapter 10 그래프(graph) SANGJI University Kwangman KO
CHAP 1:자료구조와 알고리즘 C로 쉽게 풀어쓴 자료구조 생능출판사 Slide 1 (of 28)
보고서 #5(제출기한: 10/14) 다음 문제를 해결하시오.
그래프(graph) 연결되어 있는 객체 간의 관계를 표현하는 자료구조 가장 일반적인 자료구조 형태
2010년 직원연수 자료 제1차 : 4월 16일 ~ 17일 제2차 : 4월 23일 ~ 24일
CHAP 8:우선순위큐 C로 쉽게 풀어쓴 자료구조 생능출판사 2011.
1.고객맞이 상황 응대자세 화법 중점사항 매장 밖 에 서 도보 고객 고객 방향 쪽으로 바른 자세를 취한다
4장 제어문 선택문: if 문, if – else 문, switch 문
CHAP 7:트리 C로 쉽게 풀어쓴 자료구조 생능출판사 2005.
CHAP 11: 해싱 순천향대학교 하상호.
CHAP 10:그래프 (2) 순천향대학교 하상호.
프로그래밍 보고서 작성법 순천향대학교 컴퓨터공학과 하 상 호.
배열과 연결리스트 연결리스트 배열 메모리 할당이 연속적이어서 인덱스 사용시 검색이 빠르다.
CHAP 7:트리 C로 쉽게 풀어쓴 자료구조 생능출판사 2005.
컴퓨터의 기초 제 2강 - 변수와 자료형 , 연산자 2006년 3월 27일.
5주차 실습 - solution.
다음 주 과제 3장 읽어오기 숙제 해서 제출하기. 자료구조와 알고리즘, 순환 E304호,
Chap. 1 Data Structure & Algorithms
제어문 & 반복문 C스터디 2주차.
4장 - PHP의 표현식과 흐름 제어-.
자료구조: CHAP 4 리스트 (2) 순천향대학교 컴퓨터공학과 하 상 호.
자료구조: CHAP 7(2) 트리 순천향대학교 컴퓨터공학과 하 상 호.
CHAP 8:우선순위큐.
자료구조 (Data Structure).
CHAP 1:자료구조와 알고리즘.
데이터 구조 - 소개 순천향대학교 컴퓨터공학과 하 상 호.
CHAP 10 : 그래프.
보고서 #2(제출기한: 09/23) 다음 문제를 해결하시오. (7)
최대 공약수 구하기 (1) 프로그램 예제2 : 최대 공약수 구하기 문제 해결 방법 구상 (아는 지식 정리) GCD1 알고리즘
Chapter 07 트리.
03. 병행 프로세스(Parallel Process)
Report #4 (1) (due 4/4) 문제 #1 3개의 막대 A, B, C와 원판 n개를 전달받아 Hanoi 탑 문제를 해결하는데 필요한 원판의 이동 회수를 구하여 반환하는 hanoi_tower(n, A, B, C)를 작성하라. 여기서 원판 n은 막대 A에 쌓여 있고.
나-는 믿음으로 주 얼굴 보리니- 아침에 깰 때에 주형상에 만족하리 나주님 닮기 원하네 믿음으로 주얼굴 보리라 -
배열.
Presentation transcript:

보고서 #4 (1) (제출기한: 10/6) #1 다음 그래프 G에 대해서 답하시오. (2*5 = 10) G를 인접 행렬 m로 표현하라. a)의 인접 행렬 m을 전달받아서 인접 리스트로 변환하여 반환하는 알고리즘 graph_array2list(m) 을 작성하라. b)의 알고리즘을 C 언어를 이용하여 구현하고, 테스트하라. 인접 행렬과 인접 리스트의 표현은 다음과 같다. 인접행렬 표현 #define MAX 50 // 최대 정점의 개수 typedef struct graphType { int n; // 정점 개수 int adjMat[MAX][MAX]; // 인접 행렬 } graphType 2 1 3 4 5 6 7 8 인접리스트 표현 #define MAX 50 typedef struct graphNode { int vertex; // 정점 struct graphNode *link; } graphNode; typedef struct graphType { int n; // 정점 개수 graphNode * adjList[MAX]; } graphType;

보고서 #4 – solution (1) #1 다음 그래프 G에 대해서 답하시오. (2*5 = 10) a)의 인접 행렬 m을 전달받아서 인접 리스트로 변환하여 반환하는 알고리즘 graph_array2list(m) 을 작성하라. graph_array2list(matrix_graphType mg, var list_graphType lg) integer i, j, n; graphNode *node; n <- mg.n; for i <- 1 to n do for j <- 1 to n do if mg.adjMat[i][j] = 1 then node = make_node(); node↑.vertex <- j; node ↑.link = NULL; add_first(lg.adjList[i], node); endif repeat end graph_array2list matrix_graphType mg = {…} // 인접 행렬 초기화 list_graphType lg; integer visited[mg.n] = {0}; // visited 배열 초기화 main() graph_array2list(mg, lg); // 인접 행렬을 인접 리스트로 변환 dfs(1); // 깊이-우선 탐색 // visited 배열 초기화 bfs(1); // 너비-우선 탐색 end main

보고서 #4 – solution (2) 그래프에서 정점 1을 시작으로 하여 깊이-우선 탐색하는 C 프로그램을 작성하고, 테스트하라. 프로그램의 알고리즘 복잡도는 무엇인가? 그 이유를 주라. 알고리즘 복잡도: dfs는 정점 v의 인접 리스트에 포함된 v의 인접 정점을 방문한다. 이 인접 리스트의 각 노드는 많아야 한번 방문되므로 복잡도는 O(e)이다. dfs(integer v) graphNode *node; integer vertex; visited[v] <- true; node <- lg. g.adjList[i]; while node != NULL do vertex <- node↑.vertex; if visited[vertex] != true then dfs(vertex); endif node <- node ↑.link; repeat end dfs

보고서 – solution (3) 그래프에서 정점 1을 시작으로 하여 너비-우선 탐색하는 C 프로그램을 작성하고, 테스트하라. 프로그램의 알고리즘 복잡도는 무엇인가? 그 이유를 주라. 알고리즘 복잡도: 각 정점은 큐에 한번 들어가므로 바깥 while 루프는 많아야 n번 반복. 안쪽 루프는 정점이 i이면 di번 반복. 따라서 전체로는 d1+d2+ …+dn번 반복되어 복잡도는 O(e)이다. bfs(integer v) graphNode *node; integer vertex, w; visited[v] <- true; init_queue(q); add_queue(q, v); while !is_empty(q) do vertex <- delete_queue(q); node <- lg. g.adjList[i]; while node != NULL do w <- node↑.vertex; if visited[w] != true then visited[w] <- true; add_queue(q, w); endif node <- node ↑.link; repeat end bfs