An algorithm is a finite set of instructions that, if followed, accomplishes a particular task. 알고리즘은 다음 조건을 만족하는 특정한 작업(particular task)을 수행하는 유한한 명령어의 집합(a finite set of instructions)이다. Input(입력) : 외부에서 입력이 0개 이상이어야 한다. Output(출력) : 출력이 1개 이상이어야 한다. Definiteness(명확성) : 각각의 명령어는 명확(clear)하고 모호(unambiguous)하지 않아야한다. Finiteness(유한성) : 모든 경우에 알고리즘은 한정된 스텝 후에 종료됩니다. Effectivenes(유효성) : 모든 명령은 사람이 ..