알고리즘
: 어떤 문제를 풀기 위한 단계적 절차
ex) 정렬, 탐색, 해싱 등
알고리즘을 설계
: 문제 풀이 절차를 설계한다는 의미
알고리즘을 구현
: 프로그래밍 언어를 이용해서 문제 풀이 절차를 실제로 동작하는 코드로 작성한다는 의미
알고리즘을 공부한다는 것
: 어떤 문제를 분석해서 컴퓨터가 알아들을 수 있는 형태로 해법을 설계하고 구현하는 과정을 익힌다는 의미
알고리즘을 이해한다는 것
: 알고리즘 동작에 소요되는 메모리(공간)와 프로세싱 파워(시간)를 깊이 이해하고, 자원을 효율적으로 활용하면서도 고성능의 코드를 작성하는 방법을 익힐 수 있음
알고리즘을 공부해야 하는 이유
: 어떤 문제를 해결할 때 가장 적절한 API를 선택하는 데에 도움이 됨
ex) 메모리 효율과 탐색 속도 중 어느 요소를 더 중요하게 여기는가에 따라 레드 블랙 트리를 선택할 지, 해시 테이블을 선택할 지 판단할 수 있게 된다
'자료구조와 알고리즘 > 자료구조와 알고리즘의 정의' 카테고리의 다른 글
알고리즘과 순서도 ft. flowgorithm (0) | 2023.10.16 |
---|---|
자료구조란? (0) | 2023.03.11 |