Page 11 - 기초코딩과 문제해결 with RAPTOR 도서미리보기
P. 11

CHAPTER 3? 알고리즘과 프로그램 논리   061

Section 1	 알고리즘과 절차 표현

1.1? 알고리즘(Algorithm)

알고리즘의 사전적 정의는 “주어진 문제를 해결하기 위해 정해진 일련의 논리적인 절차
나 방법을 표현한 것”으로, 실행을 통해 주어진 문제를 해결하는 결과를 제공하는 절차
적 단계이다. 우리는 일상에서 세부적인 과정에 대한 명확한 인식 없이도 매일 알고리
즘을 사용하고 있다. 예를 들어 자동차 시동을 걸 때, 컴퓨터를 켜고 로그인 할 때, 오
전 1교시 수업에 참석하기 위해 집에서 학교에 올 때 등은 단계별 일련의 과정인 하나
의 알고리즘을 따른 것이다.

4차 산업혁명 시대에는 컴퓨터를 통해 보다 창의적이고 생산적인 다양한 일을 만들어
나가야한다. 인공지능과 같은 첨단 기술이 발달하였다고 하더라도 여전히 컴퓨터를 통
해 새롭고 창의적인 문제를 해결하는 많은 부분은 사람이 만든 알고리즘에 의존하고
있다. 즉 컴퓨터는 사람이 만든 알고리즘에 따라 동작하고 있는 것이다. 따라서 컴퓨터
가 성공적으로 동작하고 기능을 수행할 수 있는 논리적이면서도 명확한 알고리즘을 제
공할 수 있어야 한다.

알고리즘 사고는 이러한 알고리즘을 이해, 실행, 평가 및 생성할 수 있는 능력을 말한
다. 알고리즘 사고는 사람에 따라 또는 알고리즘의 복잡성과 정도에 따라 다를 수 있
다. 또한 지식 도메인과 관련되어 있기 때문에 알고리즘의 사용영역과 목표하는 문제
에 따라 중요성과 복잡성이 다르게 적용된다. 드론의 자율비행과 관련된 알고리즘을
간호사가 이해해서 생성하기에는 많은 어려움이 있는 이유와 같다.

1.2? 문제해결과 절차 표현

일반적으로 문제의 해결을 위해서는 절차와 전략이 필요하다. 절차와 전략 중 문제해
결을 위한 논리적인 절차를 알고리즘이라고 할 수 있다. 다시 말해 알고리즘은 문제해
결을 위해 정의된 규칙과 절차이며 명확성을 가진 제약 및 명령의 집합이다. 특히 컴퓨
터와 소프트웨어로 문제를 해결하고자 할 경우 알고리즘은 문제 해결을 위한 아이디어
발상의 시작점으로 컴퓨터 프로그램을 만드는 중요한 요소이다.
   6   7   8   9   10   11   12   13   14   15   16