본문 바로가기

전체 글

(86)
그래프 알고리즘 그래프의 모든 정점들을 빠지지 않고 방문하는 것을 순회라고 한다.순회할 때 정점을 한번 방문하면 두번 방문하면 안된다.모든 정점들을 한번씩 빠짐없이 방문하는 것이 순회이고 깊이 우선탐색(DFS)와 너비 우선탐색(BFS)로 나뉘어지게 된다. 깊이 우선탐색(DFS)DFS 방법은 스택이나 재귀 호출로 다음 방문할 정점을 얻는다.같은 정점을 재방문 하는 것을 막기 위해(한번씩만 방문하기 위해) 불방문 배열을 사용한다DFS 방법은 스택 자료구조가 필요한데, 스택은 한쪽 방향으로 PUSH와 POP이 이루어지는 자료구조이다.먼저 그래프의 출발 정점을 하나 잡아준다.트리의 경우 무조건 루트가 출발 정점이지만, 그래프는 어디에서나 출발할 수 있다. 따라서 어느 정점이나 모두 출발 정점이 될 수 있기 때문에 임의적으로 하..
자료구조 그래프 정리 자료구조는 내가 저장하려는 데이터를 효율적으로 저장하고 관리하는 방법이죠, 어떻게 하면 적은 메모리를 사용해서 데이터를 저장하고 관리할 수 있을까?에 관한 것입니다.자료구조의 선택은 실행 성능의 향상을 기대할 수 있게 합니다.비선형 자료구조의 하나인 그래프에 대해 알아보겠습니다. (1)트리와 그래프 차이같은 비선형 자료구조의 트리 자료구조는 여러개의 노드가 있다면 부모에서 자식 관계로 이루어진 자료구조 였습니다. 부모, 자식 관계로 이루어진 자료구조이며 단방향 그래프의 한 종류입니다.a->b 이동은 가능하지만 b->a의 이동은 불가능합니다. 즉, 경로는 단 하나만 존재할 수 있습니다. 반면에 그래프는 노드가 있다면 트리처럼 단방향으로만 이루어지는게 아닌, a->b / b->a 모두 가능합니다.어떤 방향으..
프로그래밍언어 문제(2) C언어에서 배열이 A(3,4)로 선언되었다.배열의 시작주소가 200일 때A(1,3)의 주소는 얼마인가? A(3,4)는 3행 4열이므로200 (0,0)(0,1)(0,2)(0,3)(1,0)(1,1)(1,2) (1,3) (2,0)(2,1)(2,2)(2,3)A(1,3)의 주소는 207이다. 공식을 사용하여 주소를 구할수도 있다.위치가 (i,j)이고 크기가 (K,L)일때 행 우선이라면 L * i + j = 7207이 된다 main 함수를 찾는다정수형 변수 a,b와 배열 c가 선언되어 있다a에는 20, b에는 20, c[0]에는 20을 준다abc 202020  func(&a, b, c);를 호출한다&a는 주소값, b는 값, c는 주소값이 들어간다 위에서 만들어진 func() 함수를 보면x = *a; //a가 가진 ..