일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- IT
- 되추적
- 노드
- 컴퓨터보안
- 스프링부트
- 알고리즘
- 탐욕기법
- OS
- 보안
- API문서
- node
- DB
- 백트래킹
- 병행제어
- 디비
- access control
- ES6
- NEST
- DATABASE
- 운영체제
- 인터럽트
- 자바스크립트
- 백준
- 데이터베이스
- 컴퓨터 보안
- AWS
- node.js
- rest docs
- S3
- 컴퓨터
- Today
- Total
목록알고리즘 (12)
개발스토리

그래프 탐색 ■ 하나의 정점으로부터 시작해서 차례대로 모든 정점들을 한 번씩 방문하는 탐색 과정 EX) 특정 도시에서 다른 도시로 갈 수 있는 지 없는 지에 대한 탐색 과정 DFS(깊이 우선 탐색) ■ root node나 다른 임의의 노드에서 시작하여 다음 branch로 넘어가기 전에 해당 branch를 완벽하게 탐색하는 방법 ■ 넓게 탐색하기전에 깊게 탐색하는 것 ■ DFS가 BFS보다 좀 더 간단함 DFS(깊이 우선 탐색)의 특징 ■ 전위 순회를 포함한 다른 형태의 트리 순회는 모두 DFS의 한 종류이다. ■ 그래프 탐색의 경우 어떤 노드를 방문했었는 지 여부를 반드시 검사해야 한다. ■ DFS는 스택 자료구조(혹은 재귀함수)를 이용하며, 구체적인 동작 과정은 다음과 같다. 1. 탐색 시작 노드를 스..

저번 포스팅에 이어서,,, 최소 비용 신장 트리 찾기 _ 간선 지향 전략 1. 그래프에 남아 있는 가장 가중치가 작은 간선을 선택한다. 2. 선택된 간선이 합쳐진 두 개의 정점들 사이에 있다면 그 간선을 버리고 아니면 최소 비용 신장 트리에 추가. 3. (n-1)개의 간선들이 추가될 때까지 과정 1과 2를 반복한다. 예: 간선 지향 전략_크루스칼 알고리즘 1. 간선들을 가중치에 의해 정렬한다. 2. (a,b)가 가중치가 가장 작으므로 선택하여 T에 추가하고, 정점 a와 b를 합친다. 3. 남은 간선들 중 (d,e)가 가중치가 가장 작으므로 선택하여 T에 추가하고 그래프의 정점 d와 e를 합친다. 4. 남은 간선들 중 (a, e)와 (b, e)가 가중치가 가장 작으므로 임의로 (a, e)를 선택하여 T에 ..

최소 비용 신장 트리 - n(> 1) 개의 도시들을 최소한의 비용으로 연결하는 철도망을 새로 구축하려고 한다. - 모든 도시들을 서로 연결하기 위해 도시간 철도를 최소한 (n - 1)개 깔아야 한다. - 각 철도는 두 도시를 연결한다. - 이 철도망들 중에서 철도 노선들의 총 길이가 최소가 되도록 철도망을 구축해야 한다. ■ 신장트리: 연결된, 무방향 그래프안에 있는 모든 정점을 다 포함하면서 트리가 되는 연결된 부분 그래프 ■ 신장트리는 순환을 포함하지 않으며 그래프 안에 있는 모든 정점들을 연결시킨다. ■ 신장트리의 가중치: 모든 간선들의 가중치들의 합 ■ 최소 비용 신장 트리: 최소 가중치를 가진 신장트리 예 : 최소 길이 철도망 억지 기법 알고리즘 ■ 모든 신장 트리를 찾은 후에 그 중에서 최소 ..