본문 바로가기
[Map] HashMap vs. TreeMap vs. LinkedHashMap [Map] HashMap vs. TreeMap vs. LinkedHashMap -HashMap Key 는 equals 와 hashCode 가 구현되어 있어야 한다. O(1) time complexity -TreeMap ( SortedMap ) Key 가 Red-black tree structure 를 사용하여 ordering 되어 있는 형태의 Map Key 가 Comparable 을 구현해야 한다. 그래야 tree 에서 비교를 할테니... ( 참고로 String 은 Comparable 하다 ) Key 가 정렬되어 있다는 의미는 keys() 나 entrySet() 을 가지고 왔을 때, Comparable.compare 에 의한 정렬결과 순으로 collection 이 구성된다는 것이다. Tree 를 사용했다.. 2019. 1. 11.
[실용주의 프로그래머] 알고리즘의 속도 [실용주의 프로그래머] 알고리즘의 속도 -실용주의 프로그래머가 거의 날마다 사용하는 추정이 있다.알고리즘이 사용하는 자원, 곧 시간, 프로세서, 메모리 등등을 추정하는 것이 그것이다.대문자 O 표기법(big O notation)이라고 불리는 근사값을 기록하는 방식을 이용하면 답을 찾을 수 있는 경우가 많다. -일반적으로 입력의 크기는 알고리즘에 영향을 준다. 입력의 크기가 클수록, 알고리즘의 수행시간이 길어지거나 사용하는 메모리 양이 늘어난다. -알고리즘과 시간의 상관관계가 선형적이라면(늘어나는 시간이 입력값과 비례한다면) 큰 상관이 없다.그러나 알고리즘은 대개 선형적이지 않다.선형보다 더 적은 경우도 있지만, 훨씬 많은 경우도 많다. -우리는 반복문이나 재귀 호출을 담고 있는 코드를 작성할때면 언제나 .. 2018. 11. 4.
반응형