목록알고리즘 (2)
밍쎄의 코딩공간
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bfLYAf/btsp9ZauZCp/7k9RZdbt3mu4qXFBUuqKK1/img.png)
이번 코테는 처음부터 끝까지 Trie 였다. 보자마자 Trie 라는 것을 파악하는 건 성공, but 매끄럽게 코드를 구현하기는 힘들었다. -------- Trie 란? Trie는 일반적인 Tree자료구조와 같은 모양이지만 저장하는 값이 다른 형태입니다. 위와 같은 정수형 자료의 이진트리에서는 검색을 수행할 때 O(logN)의 시간 복잡도를 가지게 된다. 그러나 같은 이진트리 형태 이어도 문자열을 저장하고 있다면 문자열의 길이가 M일 때, O(M*logN)의 시간 복잡도를 가지게 된다. 이러한 문제를 해결하기 위해 Trie를 사용하는 것이다. Trie는 루트 노드는 비어있고 첫 번째 자식 노드부터 문자열의 첫 단어가 저장된다. 현재 위 그림의 Trie에 저장된 문자는 cap, code, kakao, kai..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cokhnr/btsmOASqANz/IoUZLPt9YnSfnm9Dsrrfj1/img.jpg)
벌써 부트캠프에 임한지 1달이 조금 넘어간다. 맨 처음엔 코드만 외우면 된다고 생각했는데 그것은 경기도 오산이였다. 코드가 가지고 있는 의미를 잘 파악해야한다는 것을 요근래에 깨달았다. 계속 문제를 풀려고 시도해봐도 구글의 도움없인 마무리 하기가 힘들었다. 강의를 듣고나서 시간이 너무 지체되더라도 수기로 한 번 정리를 하고 나면 코드를 이해하기가 더욱 수월했다. 이것도 7월이 되어서야 시행해본 공부 방법이다. 앞으로의 시행착오가 지금까지 도전해 본 방법보다 더 많아지겠지만 그때마다 묵묵하게 버텨야만 한다. . . 기본적으로는 1. 컴퓨터 공학 전공과목에 대한 깊은 이해 2. 코딩 테스트 역량 3. 협업 역량 위 3개의 역량을 지니고 있어야 한다. 한 달동안 부트캠프를 한 결과 저 역량을 채우기 위한 커리..