Loading [MathJax]/jax/output/CommonHTML/jax.js
반응형

병합정렬 2

6강. 동적 계획법과 분할 정복

6. 동적 계획법과 분할 정복6.1 동적 계획법의 기초동적 계획법(Dynamic Programming)동적 계획법은 1950년대에 리처드 벨먼(Richard Bellman)이 개발한 알고리즘 기법으로, 복잡한 문제를 작은 하위 문제로 나누어 해결하는 방법입니다. 하위 문제의 해결 결과를 저장하여 같은 문제를 반복해서 풀지 않도록 하여 효율성을 높입니다.동적 계획법의 시간 복잡도:- 동적 계획법의 시간 복잡도는 일반적으로 문제의 크기와 하위 문제의 수에 따라 다르며, 중복 계산을 피하기 때문에 재귀적인 접근 방식보다 효율적입니다.동적 계획법은 주로 최적화 문제에서 사용되며, 예제 문제로는 피보나치 수열, 배낭 문제 등이 있습니다. 이 기법은 "한 번 계산한 것은 다시 계산하지 않는다"는 원칙을 따릅니다./..

3강. 정렬 알고리즘

3. 정렬 알고리즘3.1 버블 정렬버블 정렬(Bubble Sort)버블 정렬은 1956년에 제어 장치 프로그래머 존 코너(John von Neumann)에 의해 처음 소개된 단순한 정렬 알고리즘입니다. 버블 정렬은 인접한 두 요소를 비교하여 정렬하는 방식으로, 가장 큰 요소가 매 반복(iteration)마다 배열의 끝으로 "거품처럼" 떠오르는 방식입니다.버블 정렬의 시간 복잡도:- 최악의 경우: O(n2)배열이 역순으로 정렬된 경우, 모든 요소를 반복적으로 비교해야 하기 때문에 최악의 경우 O(n2)의 시간이 소요됩니다.- 최선의 경우: O(n)배열이 이미 정렬된 경우, 한 번의 패스만 필요하므로 O(n)의 시간이 소요됩니다.// 버블 정렬 예시public class Bu..

반응형