| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- 이펙티브자바
- jpa
- aop
- AWS
- react
- 네트워크
- vue.js
- 스프링부트와AWS로혼자구현하는웹서비스
- java
- SQL쿡북
- 인덱스
- 자바
- 클린코드
- 알고리즘
- mysql
- CleanCode
- 자료구조
- 자바스터디
- DDD
- AWS RDS
- 인프런김영한
- 알고리즘분석
- 이펙티브 자바
- 기술면접
- 혼공SQL
- MariaDB
- 인프런백기선
- 이팩티브 자바
- 도메인 주도 개발 시작하기
- 자바예외
- Today
- Total
목록ArrayList (3)
기록이 힘이다.
시작에 요소를 추가하는 연산은 LinkedList 클래스가 ArrayList 클래스보다 빠릅니다. 하지만 요소를 끝에 더하는 것은 LinkedList가 더 느립니다. 이중 연결 리스트 -각 노드는 다음 노드와 이전 노드에 대한 참조를 포함합니다. -LinkedList 객체는 첫 번째와 마지막 요소에 대한 참조를 포함합니다. 따라서 리스트의 어느 한쪽 끝에서 시작하여 어느 방향으로든 순회할 수 있습니다. 이중 연결 리스트 구현은 ArrayList 클래스보다 시작에 요소를 추가하고 삭제하는 연산이 좋습니다. 끝에 요소를 추가하고 제거하는 연산은 ArrayList 클래스와 동일합니다. 따라서 ArrayList 클래스의 유일한 이점은 get과 set 메서드입니다. 연결 리스트는 심지어 이중 연결 리스트일 때도 ..
인덱스가 유효하지 않으면 예외를 던지는 get 메서드를 호출. get 메서드 호출을 포함한 set 메서드의 모든 것은 상수 시간. 단일 인자 버전 메서드인 add(E)를 호출하고 add(E) 메서드는 새로운 인자를 마지막에 넣습니다. 그다음 다른 요소를 오른쪽으로 이동시키고 올바른 자리에 새로운 요소를 넣습니다. 일련의 호출에서 평균 시간을 계산하는 알고리즘 분류 방법을 분할 상환 분석이라고 합니다. 핵심 개념은 일련의 호출을 하는 동안 배열을 복사하는 추가 비용이 분산되거나 분할 상환되었다는 것입니다. add(E) 메서드가 상수 시간이라면 add(int, E) 메서드는 어떨까요? add(E) 메서드를 호출한 후에 배열 일부에 반복문을 실행하고 요소를 시프트합니다. 이 반복문은 리스트의 끝에 요소를 추가..
자바 컬렉션 프레임워크에 익숙해야 한다. Collections (Java Platform SE 8 ) (oracle.com) Collections (Java Platform SE 8 ) Rotates the elements in the specified list by the specified distance. After calling this method, the element at index i will be the element previously at index (i - distance) mod list.size(), for all values of i between 0 and list.size()-1, inclusive. (Thi docs.oracle.com 인터페이스 기반 아키텍처 라고도 하는 ..