Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |
Tags
- RxJava Programming
- ArrayMap
- MediaDataSource
- Intent String 변환
- HashMap vs ArrayMap
- RxJava 스터디
- so파일 동적로딩
- android network
- Service 팁
- print callstack
- 음량표준화
- gitignore
- 오픈소스라이선스
- BlockingQueue Capacity
- enum performance
- convert string to intent
- mitmproxy
- callstack 출력
- APK로딩
- 네트워크 디버깅
- convert Intent to string
- Replaygain
- java callstack
- android enum
- Service관리
- gitignore작성법
- lufs
- Dagger2란
- corePoolSize
- APK 동적로딩
Archives
- Today
- Total
목록HashMap vs ArrayMap (1)
일상&개발 로그
HashMap Key값의 hashCode를 index로 Array에 값을 저장함. 기본적으로 배열이 커야 충돌확률이 줄어들기때문에 큰 배열을 사용한다. 따라서 검색 속도는 O(1)로 매우 빠르다. (hash값이 겹칠 경우 chaining등의 방법을 이용한다.) ArrayMap 두 개의 배열을 이용한다. 1번 배열에는 HashCode를 순서대로 저장한다. 2번 배열에는 Key/Value를 순서대로 저장한다. 값을 가져올 때는 1번 배열을 HashCode로 이진탐색하여 2번 배열의 index를 구한다. 2번 배열의 index 다음 값을 가져온다.(hashIndex * 2, hashIndex * 2 + 1) 검색속도는 O(logN) 이다. 요약: HashMap은 속도는 빠르지만 메모리를 많이 먹는다. Arra..
개발/안드로이드 개발
2017. 5. 22. 21:40