반응형
linked list는 자료구조 중 하나인데, 저장할 수 있는 공간이 있으면, 다음 데이터 공간 주소를 함께 가지고 있는 구조이다.
배열과의 차이
배열은 정해진 공간이 있어서, 작업 중에 공간을 늘리거나 줄일 수가 없다.
그에 반해 linked list는 더하거나 빼는 것이 가능한데, 데이터 안에 그 위치 정보를 주는 것이다.
그런데 여기에서 새롭게 추가가 되었던 노드 정보를 끊고 다음 데이터로 연결을 시키게 되면, 아까 추가되었던 데이터를 부를 수 있는 방법이 사라졌기 때문에 사라진 것처럼 보이지만, 실제로는 메모리를 잡아먹고 있는 상태이다.
C++과 같은 언어에서는 저 메모리를 삭제하겠다고 실제로 선언을 해줘야만 데이터가 사라지지만, 자바에서는 이러한 경우 자동적으로 삭제가 된다.
속도적으로는 데이터마다 노드를 찾아다녀야하기 때문에 배열보다는 느릴 수 있다. 하지만 데이터 크기가 정해지지 않은 데이터를 처리해야 할 때는 전체를 움직여야 하는 배열보다는 훨씬 효율적이라고 할 수 있다.
반응형
'Programming > Java' 카테고리의 다른 글
Java Strings Tutorial (0) | 2022.02.21 |
---|---|
Java Regression problem (0) | 2022.02.19 |
퀵 정렬 자바 (0) | 2022.02.10 |
HashTable in java (0) | 2022.02.10 |
Dynamic Arrays in Java (0) | 2022.02.10 |