현실 세계와 코드에서의 알고리즘
알고리즘은 결과를 결정하기 위해 일련의 단계를 사용하는 것입니다. 단계는 지침 세트, 비교 또는 심지어 수학 공식을 포함할 수 있습니다.
일상 생활은 우리가 생각하지 않고 사용하는 알고리즘으로 가득 차 있습니다. 이 알고리즘들은 당신이 결정을 내리고, 무언가를 만들고, 문제를 해결하는 데 도움을 줍니다.
실생활 예시:
- 간식을 사기 위해 충분한 돈이 있는지 확인하기.
- 아침에 옷 입기.
- 스틱 피규어 그리기.
코딩 예시:
- 기술 수준이 아이템 사용하기에 충분히 높은지 확인하기.
- 아이템 목록을 알파벳 순으로 정렬하기.
- 용암 위에 서 있는 플레이어는 매 초마다 5의 체력을 잃습니다. 만약 체력이 0이 되면, 플레이어는 재생성됩니다.
코드에서 알고리즘 생성하기
현실 세계에서는 우리가 매일 사용하는 알고리즘에 대해 보통 생각하지 않습니다. 하지만 컴퓨터는 문제를 해결하거나 결과를 생성하기 위해 알고리즘을 단계별로 작성해야 하며, 최소한 세 가지 방법 중 하나를 사용해야 합니다.
| 방법론 | 예시 |
|---|---|
| 선택 - 조건문을 사용하여 출력 결과를 결정합니다, 예를 들어 if/then. |
|
순서 - 정확한 단계의 집합. | |
반복 - 필요한 경우 코드의 일부를 반복합니다, 예를 들어 for 루프나 곱셈에서. |
|
알고리즘 결합하기
더 큰 문제들이 더 작은 문제들로 나뉘듯이, 일부 알고리즘도 일련의 더 작은 알고리즘으로 나눌 수 있습니다.

당신이 아침에 옷을 입기 위한 알고리즘을 생각해 보세요. 만약 그것이 당신의 주요 알고리즘이라면, 의상을 고르는 알고리즘과 옷을 입는 알고리즘을 사용할 수 있습니다.
옷 입기 의사 코드
-- 의상 선택을 위한 첫 번째 알고리즘
local function pickClothes()
pick top clothing
pick bottom clothing
pick Socks
pick Shoes
end
-- 옷 입기를 위한 두 번째 알고리즘
local function putOnClothes()
put on top clothing
put on bottom clothing
put on socks
put on shoes
end
-- 주요 알고리즘, pickClothes()와 putOnClothes()를 호출함
local function getDressed()
pickClothes()
putOnClothes()
end
요약
알고리즘은 결과를 제공하는 미리 정의된 단계입니다. 일상 생활에서 알고리즘은 옷을 입거나, 일을 하거나, 케이크를 만드는 것과 같은 문제를 해결합니다. 코드에서는 알고리즘이 웹사이트 관리, 교통 혼잡 처리 또는 게임 메커니즘 실행과 같은 문제를 해결합니다. 목표를 완수하기 위해 알고리즘은 종종 다른 알고리즘을 호출합니다.
알고리즘은 결론에 도달하기 위해 세 가지 방법을 사용합니다; 선택, 반복, 순서. 선택은 if/then과 같은 조건문을 사용합니다. 반복은 필요한 경우 코드의 일부를 반복합니다. 순서는 결과를 생성하기 위해 일련의 단계를 사용합니다.