# 알고리즘이란?
## 목차
---
1. 무엇?
2. 왜 배움?
## 1. 무엇?
---
### 정의
- 문제 해결을 위한 방법.
### 특징
- 입력과 출력의 형태로 문제 출제.
### 문제 예
100명의 학생 중, 최고 득점을 찾으시오.
- 입력 - 100명 학생의 시험 점수
- 출력 - 최대값
### 알고리즘 예
[알고리즘 A] 추상적
```
maxScore(arr[], n) {
x[1 .. n]의 값 중 최대값을 찾음;
return 최대값;
}
```
[알고리즘 B] 구체적
```
int maxScore(int[] arr, int n) {
// 변수 생성
int max = 0;
// 반복 계산
for (int i : arr) {
if (i > max) {
max = i;
}
}
// 값 반환
return max;
}
```
## 2. 왜 배움?
---
- 문제 해결을 위한, 체계적 사고능력 향상.
- 개발자로서의 기초 소양 증진.
- 프로그래밍 능력 훈련.
## 요약
---
- 알고리즘이란, 문제 해결을 위한 방법.
- 알고리즘 문제는, 입력과 출력의 형태로 제시.
- 개발 능력을 증명하기 위한, 기초 소양.