일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 코딩공부
- 코딩문제
- CS
- 99클럽
- Til
- 메서드
- 회고
- 면접(java
- wil
- 이진 탐색(binary search)
- Grafana
- ArrayList
- 자바
- aop
- 자료구조
- 항해99
- 코딩
- HTML
- Java
- Spring
- 정렬 알고리즘(sort algorithm)
- github
- cs 공부)준비
- 코딩테스트 준비
- 개발자 취업
- css
- 프로그래머스
- 배열
- Entity
- GIT
- Today
- Total
목록자료구조 (3)
hayu's 개발 일지
LinkedList자바의 Linked List는 ArrayList와 같이 인덱스로 접근하여 조회 / 삽입이 가능하지만 내부 구조는 완전히 다르게 구성되어 있다는 점이 특징이다.ArrayList는 내부적으로 배열을 이용하여 메서드로 이리저리 조작이 가능하게 만든 컬렉션이라면, Linked List는 노드(객체) 끼리의 주소 포인터를 서로 가리키며 링크(참조)함으로써 이어지는 구조이다.→ 객체를 만들면 객체의 주소가 생기게 되는데, 노드마다 각기 객체의 주소를 참조함으로서 연결 형태를 구성하는 것이다. Linked List의 장단점장점배열의 복사나 재할당 없이 데이터 추가 가능 + 유연한 공간을 갖는다.ArrayList는 배열이 꽉 차있는 경우 크기를 늘려 준 다음 데이터를 다시 추가해 주는 과정을 진행해야..
ArrayList 메서드- add(String obj) : ArrayList의 마지막에 문자열을 추가한다. 추가에 성공하면 true를 반환한다.- get(int index) : 지정된 위치의 요소를 반환한다.- set(int index, String element) : 지정된 위치의 요소를 주어진 요소로 교체한다. 이전 요소를 반환한다. - remove(int index) : 지정된 위치의 요소를 리스트에서 제거한다. 제거된 요소를 반환한다. - size() : 리스트의 요소 개수를 반환한다. - isEmpty() : 리스트가 비어 있는지 확인한다. 비어 있으면 true를 반환한다. - clear() : 리스트의 모든 요소를 제거한다. // ArrayList 생성 ArrayList list ..
ArrayListArrayList는 배열의 상위 호완 버전 정도의 개념이다.기존의 배열만으로는 자료를 담고 관리하는데 약간 불편함이 있어서 나온 것이 ArrayList이다.ArrayList 특징연속적인 데이터의 리스트이다.(데이터는 연속적으로 리스트에 들어있어야 하며, 중간에 빈 공간이 있으면 안된다.)ArrayList 클래스는 내부적으로 Object[] 배열을 이용하여 요소를 저장한다.배열을 이용하기 때문에 인덱스를 이용해 요소에 빠르게 접근할 수 있다.크기가 고정되어 있는 배열과 달리 데이터 적재량에 따라 가변적으로 공간을 늘리거나 줄인다. 그러나 배열의 공간이 가득 찰 때 마다 배열을 copy 하는 방식으로 늘리기 때문에 이 과정에서 지연이 발생하게 된다.데이터를 리스트 중간에 삽입/삭제 할 경우,..