본문 바로가기

개발

Java - LinkedList

반응형

배열의 장점 : 구조가 간단하고 데이터를 읽는 데 걸리는 시간이 짧다.
           단점 : 크기를 변경할 수 없다. 변경해야 하는 경우 새로운 배열 생성 후 복사해야한다. 메모리가 낭비될 수있다.
                    비순차적인 데이터의 추가, 삭제에 시간이 많이 걸린다. 단, 순차적인 추가 삭제는 빠르다.

이 단점을 보완한 것이 LinkedList!!!!!
배열과 달리 불연속적으로 존재하는 데이터를 연결

데이터의 삭제 : 단 한 번의 참조 변경 만으로 가능
데이터의 추가 : 한번의 Node객체생성과 두 번의 참조변경만으로 가능

단점 
 - 접근성이 나쁘다. 불연속 적이라서 한번에 찾아 가는것은 불가능하다. 여러번 지나가야한다.
   >> 보완한것이 이중연결리스트  접근성 향상 > 데이터가 많을 수록 접근성이 떨어진다.
   >> 더 보완한 것이 이중원형연결리스트 : 마지막 노드와 첫번째 노드를 연결 

ArrayList vs LinkedList 성능 비교 
 - 순차적 데이터 추가 삭제 - ArrayList가 빠르다.
 - 비순차적 데이터 추가 삭제 - LinkedList가 빠르다.
 - 접근시간 - ArrayList가 빠르다.

반응형

'개발' 카테고리의 다른 글

Java - Arrays  (0) 2021.06.06
Java - 스택과 큐 (Stack & Queue)  (0) 2021.06.06
Java - ArrayList  (0) 2021.06.06
Java - 컬렉션 프레임웍(collections framework)  (0) 2021.06.06
Java - 형식화 클래스  (0) 2021.06.06