알고리즘을 매일 풀고 기록하기 위한 저장소입니다.
하루하루 더 나아지기 위해 노력하고 있습니다👩🏻🎓
(파이썬을 기반으로 하지만 간혹 javascript로 기록한 부분이 있습니다.)
어떤 문제를 해결하기 위한 여러 동작들의 모임이다.
- 입력 : 외부에서 제공되는 자료가 0개 이상 존재해야 한다.
- 출력 : 적어도 2개 이상의 서로 다른 결과가 있어야 한다.
- 명확성 : 수행 과정은 명확하고 모호하지 않은 명령어로 구성되어야 한다.
- 유한성(종결성) : 알고리즘의 명령어대로 수행했을 때 주어진 값이 처리된 후 종료되어야 한다.
- 효과성 : 알고리즘은 효율적일수록 가치가 높다. 시간적, 공간적 효율성을 가져야 한다.
- Sequence : 순차적으로 프로그램 코드를 수행한다.
- Decision(Selection) : 특정 조건에 따라 수행을 달리 한다.
- Repetition : 수행을 1회 이상 반복 한다.