To Be myself

[컴퓨터과학개론] 알고리즘 (1) 본문

CS

[컴퓨터과학개론] 알고리즘 (1)

투비마 2024. 10. 20. 21:12

개념

정의

주어진 문제를 해결하기 위한 풀이 과정

 

조건: 입출력, 명확성, 유한성, 유효성

생성단계

기술방법: 자연어, 의사코드, 프로그래밍 언어, 순서도 등

 

자료구조와의 관계

알고리즘에 적합한 자료구조, 자료구조에 적합한 자료구조 선정이 효율적인 프로그래밍의 기초

 

설계 기법

분할정복 방법

하향식 접근 방식

문제의 입력을 더 나눌 수 없을 때까지 2개 이상의 작은 문제로 순환적(recurisvely)으로 분할하고 분할된 문제를 각각 해결한 뒤 그 해를 결합

- 작업 방법: 분할 > 정복 >  결합

문제를 작게분할하는 것이 중요

예. 이진탐색, 퀵 정렬, 합병 정렬

 

동적 프로그래밍 방법

욕심쟁이 방법