[Algorithm] 알고리즘 소개

HyunDDeung·2022년 7월 5일

Algorithm

목록 보기
1/13

알고리즘이란?

알고리즘의 사전적 정의는 '어떠한 문제를 해결하기 위한 여러 동작들의 모임' 입니다.
조금 더 쉽게 얘기하면 '문제를 해결하는 절차' 라고도 할 수 있습니다.

알고리즘의 조건

알고리즘이 잘 적용되었다고 볼 수 있는 조건들은 다음과 같습니다.

  • 입력 : 외부에서 제공되는 자료가 0개 이상 존재해야 한다.
  • 출력 : 적어도 2개 이상의 서로 다른 결과를 내야 한다.
  • 명확성 : 수행과정은 무엇을 하기 위한 것인지 명확하게 정의되어야 한다.
  • 유한성 : 알고리즘의 명령어대로 수행했을 때 처리된 후 종료되어야 한다.
  • 효율성 : 모든 과정은 명백하게 실행가능한 것이어야 한다.

구현

알고리즘 개발의 정형적인 단계이다.
문제 정의 -> 모델 고안 -> 명세 작성 -> 설계 -> 검증 -> 분석 -> 구현 -> 테스트 -> 문서화

분류

  • 구현 : 재귀적 알고리즘, 연역적 알고리즘, 결정론적 알고리즘, 근사 알고리즘 등
  • 설계 : 무차별 대입 공격, 분할 정복 알고리즘, 그래프 순회, 백트래킹 등
  • 최적화 문제 : 선형 계획법, 동적 계획법, 탐욕 알고리즘, 휴리스틱 함수 등
  • 이론적 분양 : 검색 알고리즘, 정렬 알고리즘, 수치 알고리즘, 그래프 알고리즘 등

참고

https://ko.wikipedia.org/wiki/%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98
https://opentutorials.org/course/2471/13912

profile
감사합니다.

0개의 댓글