본문 바로가기
개발

알고리즘이란?

by 라이프_디자이너 2021. 2. 11.
반응형

 

 

알고리즘(영어: Algorithm 앨거리듬)은 수학과 컴퓨터 과학, 언어학 또는 관련 분야에서
어떠한 문제를 해결하기 위해 정해진 일련의 절차나 방법을 공식화한 형태로 표현한 것
※출처 : 위키백과

 

특정한 문제에 대해 효율적인 처리를 하기 위해

절차나 방법을 공식화하는 일련의 과정을 알고리즘이라고 합니다.

 

알고리즘은 굉장히 복잡하거나 어려운 개념은 아닙니다.

간단하게 예를 들어보겠습니다.


[문제]

황예쁨 씨는 통금이 22시까지인 집안에 살고 있다.

열애 중인 그녀는 사랑하는 남자 친구와 놀다 보니, 23시가 넘었고

핸드폰에는 아버지의 부재중 전화가 30통이 넘게 기록되어 있다.

 

이때, 그녀가 집에서 혼나지 않기 위한 최선의 방법은 무엇일까?

 


 

혼나지 않기 위한 가장 좋은 방법은 아버지의 분노를 삭이는 일이다.

어떻게 하면, 아버지를 화를 가라앉게 할 수 있을까?

 

과거 그녀는 이런 상황을 몇 차례 경험했고

그때마다, 친한 친구의 집에서 잠들었다고 얘기하여 해결했었다.

 

하여 그녀는 이번에도 갖은 전략을 세운다.

1) 친구에게 전화를 한다.

2) 상황을 알린 후 입을 맞춘다.

3) 조용한 장소로 이동한다.

4) 어머니께 먼저 전화를 건다.

5) 아버지께서 아직 화가 나셨는지, 안 나셨는지 확인한다.

6) 아버지와 통화를 한다.

7) 메소드 연기를 통해 자다 일어난 목소리로 통화한다.

 

이렇게 문제를 해결하기 위한 과정이 알고리즘이다.


알고리즘 어디다 쓸까?

 

알고리즘은 생각보다 우리 생활 곳곳에 자리 잡고 있습니다.

게임에 사용되는 스킬 트리나 스타크래프트에서의 건물 짓는 순서가 대표적입니다.

 

다음 스텝을 진행하기 위해서, 먼저 진행돼야 하는 스텝이 있는 경우에

효율적으로 처리할 수 있는 알고리즘이 있습니다.

 

 

※출처 : https://boney0000.blogspot.com/2008/12/blog-post_3985.html

 

 

우리가 사용하는 내비게이션도 마찬가지로, 수많은 경로 중

가장 빠른 경로를 찾아주는 것도 알고리즘에 의해 찾아지는 것입니다.

 

 

※출처 : https://1boon.kakao.com/appstory/191111_4

 

 

요즘은 기업들에서도 중요하게 생각하고 있어, 입사 테스트에도 많이 활용하고 있습니다.

대한민국 대표 기업인 삼성, 카카오, 네이버 등 대기업이나 중소기업에서도 우수한 인재를 뽑기 위해

알고리즘이란 학문을 중요 시 하고 있습니다.


알고리즘, 공부는 어떻게 시작할까?

 

알고리즘 공부를 하기 위해서는, 프로그래밍 언어부터 다룰 수 있어야 합니다.

프로그래밍 언어를 활용하여 문제를 해결하기 위한 절차를 컴퓨터가 이해할 수 있게 입력해야 합니다.

 

간단한 공부 순서는 아래와 같습니다.

 

1. 프로그래밍 언어 공부

2. 이름 있는 알고리즘 공부

3. 알고리즘 문제 사이트를 통한 응용력 향상

 

2번과 3번의 복습

 

어떻게 공부를 시작하고, 관련 사이트는 무엇이 있는지

상세한 내용은 다음 글에 남기겠습니다.

 

알고리즘 Stack++

반응형

댓글