일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 자바의정석
- 자바개념
- ☆
- 알고리즘공부
- 백준
- 알고리즘
- 무료개발강의
- 자바의정석연습문제
- dp
- Java개념
- dfs
- 백준알고리즘
- ★
- 자바공부
- BFS
- 브루트포스
- 동적계획법
- 자바의정석연습문제풀이
- 빅오 표기법
- 백준자바
- 백트래킹
- 백준단계별로풀어보기
- 코딩공부
- 자바
- 무료코딩강의
- 시간 복잡도
- 개발공부
- 다이나믹 프로그래밍
- 백준9단계
- java
- Today
- Total
더 많이 실패하기
코딩공부 71일차: 자바의 정석 / 자바의 정석 121, 122강 / 11장 컬렉션 프레임웍 본문
*10장부터는 자바의정석2권
개발 공부 71일차
자바의 정석 기초편 강의
https://www.youtube.com/watch?v=oJlCC1DutbA&list=PLW2UjW795-f6xWA2_MUhEVgPauhGl3xIp
총 171개의 강의로 구성되어 있다
총 강의 시간은 80시간 정도
강의는 기초편을 기준으로 제작되어 있지만,
http://www.yes24.com/Product/Goods/24259565
Java의 정석 - YES24
최근 7년동안 자바 분야의 베스트 셀러 1위를 지켜온 `자바의 정석`의 최신판. 저자가 카페에서 12년간 직접 독자들에게 답변을 해오면서 초보자가 어려워하는 부분을 잘 파악하고 쓴 책. 뿐만 아
www.yes24.com
링크로 첨부한 자바의 정석 3판으로도 무리가 없다는 댓글이 있어 그대로 진행
ch 11 - 7~11 ArrayList
(3판 2권 기준 584~595쪽)
https://www.youtube.com/watch?v=_2e-cgwMOyc&list=PLW2UjW795-f6xWA2_MUhEVgPauhGl3xIp&index=121
1.2 ArrayList
-ArrayList는 기존의 Vector를 개선한 것으로 구현원리와 기능적으로 동일, Vector는 자체적으로 동기화처리
-List인터페이스를 구현하므로, 저장 순서가 유지되고 중복을 허용
-데이터의 저장공간으로 배열을 사용한다(배열 기반)
ArrayList의 메서드
생성자: ArrayList() / ArrayList(Collection c) / ArrayList(int initialCapacity)
추가
삭제
검색
(584, 585에 표로 정리)
585쪽 예제 11-1
list1.add(5) 로 적어도 autoboxing에 의해 new Integer(5)로 변환된다
remove에서는 저렇게 쓰면 인덱스5에 있는 값이 사라지므로 new Integer(삭제할 숫자)로 잘 적어야 한다
삭제, 추가 과정 그림(594쪽)
*Java API 소스 보기 - /jdk설치경로/src.zip
ch 11 - 12~14 LinkedList
(3판 2권 기준 596~쪽)
https://www.youtube.com/watch?v=1ey5QpqbapU&list=PLW2UjW795-f6xWA2_MUhEVgPauhGl3xIp&index=122
1.3 LinkedList
배열의 장단점
장점: 배열은 구조가 간단하고 데이터를 읽는 데 걸리는 시간(접근시간,access time)이 짧다
단점1: 크기를 변경할 수 없다
-크기를 변경해야 하는 경우 새로운 배열을 생성 후 데이터를 복사해야 함(①더큰배열생성, ②배열복사, ③참조변경)
단점2: 비순차적인 데이터의 추가, 삭제에 시간이 많이 걸린다
-데이터를 추가하거나 삭제하기 위해 다른 데이터를 옮겨야 함
-그러나 순차적인 데이터 추가(끝에 추가)와 삭제(끝부터 삭제)는 빠르다 (데이터 이동이 없으므로)
LinkedList는 배열의 단점을 보완
-배열과 달리 불연속적으로 존재하는 데이터를 연결(link)
-데이터 삭제: 단 한 번의 참조변경만으로 가능
-데이터 추가: 한 번의 Node 객체생성과 두 번의 참조변경만으로 가능
-링크드 리스트: 연결리스트. 데이터 접근성이 나쁘다
-더블리 링크드 리스트: 이중 연결리스트. 접근성 향상
-더블리 써큘러 링크드 리스트: 이중 원형 연결리스트
ArrayList(배열기반) vs Linked(연결기반) - 성능 비교 (600, 601쪽)
①순차적 데이터 추가/삭제 - ArrayList
②비순차적 데이터 추가/삭제 - LinkedList
③접근시간(access time) - ArrayList
'자바 > 자바의정석' 카테고리의 다른 글
코딩공부 73일차: 자바의 정석 / 자바의 정석 125, 126강 / 11장 컬렉션 프레임웍 (0) | 2022.10.11 |
---|---|
코딩공부 72일차: 자바의 정석 / 자바의 정석 123, 124강 / 11장 컬렉션 프레임웍 (0) | 2022.10.10 |
코딩공부 70일차: 자바의 정석 / 자바의 정석 119, 120강 / 11장 컬렉션 프레임웍 (1) | 2022.10.08 |
코딩공부 69일차: 자바의 정석 / 자바의 정석 115, 116강 / 10장 날짜와 시간 & 형식화 (0) | 2022.10.07 |
코딩공부 68일차: 자바의 정석 / 자바의 정석 115, 116강 / 10장 날짜와 시간 & 형식화 (0) | 2022.10.06 |