오늘은 하루종일 알고리즘 공부를 했다. 내가 생각하는 알고리즘은 "얼마나 효율적으로 해결하느냐"가 가장 큰 포인트다. 즉, 알고리즘은 문제를 해결하는 최적의 경로이다. 그것을 생각하면서, 알고리즘에 대해 공부를 하였다. 알고리즘은 크게 2가지의 비용을 가지게 된다. 시간과 공간이다. 시간은, 이 수식을 활용해서 얼마나 걸리느냐이고, 공간은, 내가 사용할 수 있는 기억 용량중 얼마나 소모를 하느냐이다. 이것을 표현하는 말로, 시간복잡도와 공간복잡도가 있다.

 일단 알고리즘을 알기 위해서는, 데이터를 어떻게 정리하냐 즉, 자료 구조에 대해서 알 필요가 있다. 그렇기 때문에 주어진 강의를 활용해서, 자료 구조와 알고리즘을 공부하기 시작했다. 아직은 이론적인 부분이 대부분이라서 크게 무언가 만든다는 느낌은 없지만, 해왔던대로, 공부를 했다.

 효율적인 알고리즘 공부는 코드 테스트 연습과 분리 할 수 없다고 생각한다. 즉, 내가 활용 할 수있는 논리적 절차적 사고를 효과적으로 적용할 수 있는 것이 코드 테스트다. 그렇기 때문에, 알고리즘 공부하는 동안은 다양한 코드 테스트 사이트를 활용할 것이다.

 이 과정을 통해서, 내가 백엔드 개발자로써의 기초를 얼마나 크게 성장할 수 있을지 궁금해진다. 이번 기간동안은, 꾸준히 공부하고, 계속해서 반복 연습하는 것이 가장 중요하다고 생각된다. 

+ Recent posts