본문으로 바로가기

[알고리즘] 알고리즘이란?

category 알고리즘/이론 2019. 12. 27. 02:32

학교에 재학하며 수강했던

알고리즘 강의를 복습하기 위한 포스팅입니다✍️


1. 알고리즘의 정의

어떤 값이나 값의 집합을 입력으로 받아 또 다른 값이나 값의 집합을 출력하는 잘 정의된 계산절차

계산문제를 정의하려면 입력과 출력의 관계를 잘 서술해야 하는데

알고리즘은 이런 입출력 관계를 구현할 수 있는 계산 과정을 설명함

 

  • 타당한 알고리즘이란? (Correct Algorithm)

    : 알고리즘이 모든 입력사례에 대해 항상 올바른 출력을 내고 종료할 경우를 말함

2. 알고리즘 표현법

알고리즘 표현법에는 크게 세가지가 있음

 

1. 자연어

   : 사람들이 일반적으로 쓰는 언어

 

2. 의사코드

   : 프로그램을 작성할 때 각 모듈이 작동하는 논리를 표현하기 위한 언어

    특정 프로그래밍 언어의 문법에 따라 쓰인 것이 아니라,

    일반적인 언어로 코드를 흉내 내어 알고리즘을 써놓은 코드

 

   - 예시 (삽입정렬)

삽입정렬 의사코드

3. 순서도

   : 다이어그램의 한 종류로 여러 종류의 상자와 이를 연결하는 화살표를 이용해서

    명령의 순서를 보여주는 알고리즘

 

   - 예시 (삽입정렬)

삽입정렬 순서도 (이미지 클릭시 출처로 이동)