
1. 링크드 리스트 (LinkedList) : 노드라고 불리는 각 요소(element)들을 담고 있는 선형 자료 구조. 노드는 데이터와 다음 노드의 정보 또는 주소값을 저장하는 Object이다. 2. Array vs LinkedList - Array : Array의 요소(element)들은 특정한 위치 또는 인덱스에 저장되어 있다. - LinkedList : LinkedList의 요소인 노드는 특정한 위치에 저장되어 있지 않고 각 노드가 갖고 있는 pointer 값으로 연결 되어 있다. 즉, 한 노드의 위치는 그 노드의 위치를 갖고 있는 다른 노드에 의존한다. 3. 링크드리스트의 장단점 - 장점 : LinkedList에서 노드의 제거 및 추가는 대상이 되는 노드의 위치를 갖고 있는 다른 노드의 point..

Goal - 해시, 해시함수, 해시테이블의 개념을 이해한다. - 해시방식에서 일어나는 충돌개념을 이해한다. - 충돌 해결방식인 Chaining, Linear Probing 방식을 이해한다. - 테이블 리사이징을 이해한다. 1. 해시 - 데이터를 관리하고 유지하는 자료구조 - 리소스보다 속도를 우선시한다. 2. 해시의 데이터 저장 구조 - 똑같은 데이터가 올 때마다 똑같이 분류되는 규칙을 '해시함수'에 정의하여 데이터를 해시테이블에 저장함. 3. 해시함수 - 데이터를 규칙에 맞추어 해시테이블로 뿌려줌 - 사칙연산, 비트연산 또는 다양한 연산의 조합으로 이루어진 함수 - 데이터를 해시함수로 처리하여 해쉬코드를 뽑고, 해시코드에서 다시 인덱스를 뽑은 후 해시테이블에 인덱스와 값을 저장함. 4. 해시테이블 - ..
1. LinkedList에서 ListIterator 생성. public ListIterator listIterator() { return new ListIterator(); } class ListIterator{ private Node next; private Node lastReturned; private int nextIndex; ListIterator(){ next = head; } //Main에서 호출 LinkedList.ListIterator i = numbers.listIterator(); 2. ListIterator next() 구현 -next()를 실행하면, lastReturned노드의 데이터 값을 리턴하고, next변수를 통해 다음 값을 가르킨다. -nextIndex++를 통해 내부적으로..
Goal - set구조의 특징에 대해 알아본다. 1. set의 특징 1-1 순서대로 저장되지 않음 - 출력 결과 : [김유신, 조자룡, 강감찬, 이순신] - hash방식으로 저장되어 있기 때문에, 출력 순서는 입력 순서와 관계 없다. - data의 순서 개념이 없기 때문에 get(index) 사용 불가. package set.practice.fastcampus; import java.util.HashSet; public class HastSetTest { public static void main(String[] args) { HashSet set = new HashSet(); set.add("이순신"); set.add("김유신"); set.add("강감찬"); set.add("조자룡"); System...
- 20200330
- 20200804
- 생활코딩리눅스
- 20200413
- 20200622
- 20200421
- likelion
- 20200503
- 20200512
- 20200403
- 20200417
- 20200429
- 20200317
- 20200428
- 20200423
- chapter8
- 20200427
- 백준
- chapter7
- 20200510
- 20200406
- 20200424
- 20200415
- 20200624
- 20200502
- 20200504
- 20200319
- 20201204
- 20200425
- 20200420
- Total
- Today
- Yesterday