다음주 월요일에 네이버 부스트캠프 웹/모바일 코딩테스트 1차가 진행된다. 이번주는 약 4개월 동안 배운 알고리즘 개념을 정리하고, 연습문제를 풀면서 코테 준비에 집중하려고 한다. 그 동안 코딩테스트를 연습하면서 느낀 점을 정리해보았다.
문제에서 주어지는 입력의 양은 곧 사용할 알고리즘 기법을 결정한다.
=> 문제를 해결하기 위한 방법을 떠올리는 과정에서 입력의 양을 잘 고려해서 사용할 알고리즘을 결정해야한다.
같은 알고리즘일지라도 디테일이 있다.
=> 흔히 사용하는 DFS, BFS, 백트래킹, 이분 탐색 등의 알고리즘에도 다양한 형태의 값을 도출하기 위한 옵션이 존재한다. DFS라고 해서 모두 다 같은 DFS가 아니다.
구상하는 시간이 1분 늘면, 구현하는 시간이 10분 준다.
=> 감이 잡힌다고 해도 확신이 들 때까지 구상하지 않고 바로 구현할 경우, 의도한대로 구현되지 않을 수 있다.
특정 알고리즘을 사용할 수 있느냐는 초보를 구분하고, 시간복잡도를 고려할 줄 아느냐는 고수를 구분한다.
=> 결국 코딩테스트의 합/불은 시간복잡도를 고려했는지에서 갈린다.
이번주는 위에서 언급한대로 알고리즘 공부 위주로 시간을 보낼 예정이다. 이번주에 맘 놓고 알고리즘 공부를 하기 위해 저번주에 부지런히 PFL 개발을 진행했다. Wiki를 같이 정리하면서 개발중이기에 개발 진행 속도가 빠르지는 않지만, 애매했던 개념들을 바로 잡을 때마다 뿌듯함을 느꼈다. 이번주도 화이팅!!