728x90
반응형
SMALL
알고리즘이란
- 어떤 문제를 해결하기 위한 절차, 방법, 명령어들의 집합.
- 알고리즘은 어떻게 구성하는가에 따라 같은 문제를 풀더라도 오래 걸릴 수도 있고, 오류가 생길 수도 있으므로 효율적이고, 명확하게 만드는 것이 중요하다.
- 어떠한 문제를 해결하기 위한 여러 동작들의 모임이다. 유한성을 가지며, 언젠가는 끝나야 하는 속성을 가지고 있다.
알고리즘의 조건
알고리즘은 다음의 조건을 만족해야 한다.
- 입력 : 외부에서 제공되는 자료가 0개 이상 존재한다.
- 출력 : 적어도 2개 이상의 서로 다른 결과를 내어야 한다.(즉 모든 입력에 하나의 출력이 나오면 안됨)
- 명확성 : 수행 과정은 명확하고 모호하지 않은 명령어로 구성되어야 한다.
- 유한성(종결성) : 유한 번의 명령어를 수행 후(유한 시간 내)에 종료한다.
- 효율성 : 모든 과정은 명백하게 실행 가능(검증 가능)한 것이어야 한다.
프로그램이란
- 컴퓨터가 특정 작업을 수행할 수 있도록 프로그램을 설계, 코딩(coding), 시험하는 것.
- 프로그래밍은 컴퓨터 프로그램을 작성하는 것으로 문제 분석과 프로그램의 설계(design) 및 번역(translation), 실행(execution) 과정을 거쳐 결과를 얻고 테스트(test) 및 디버그(debug)하는 전 과정을 의미한다.
알고리즘과 프로그램의 차이
- 프로그램은 불충분한 메모리, 제한된 프로세서 속도, 잘못된 입력 데이터, 하드웨어 결함, 네트워크 불량 등의 실질적인 문제도 신경써야한다.
👉 알고리즘은 이상적인 것이고, 프로그래밍은 실재하는 것이다!!!
<출처>
728x90
반응형
LIST
'IT 지식 > 1일 1로그 100일 완성 IT지식' 카테고리의 다른 글
운영체제가 일하는 법 (1) | 2022.07.30 |
---|---|
가상 운영체제와 가상머신 (0) | 2022.07.30 |
다른 프로그램을 처리하기 위한 프로그램 (0) | 2022.07.27 |
프로세서는 무조건 빠른 게 좋을까? (0) | 2022.07.23 |
HDD와 SSD의 차이 (0) | 2022.07.21 |