JAVA 배열

main-me·2023년 3월 15일
0

JAVA

목록 보기
4/6

배열

배열은 메모리의 연속 공간에 값이 채워져 있는 형태의 자료구조이다. 물리적 연속 공간이다.
하나의 연산에 의해 4byte씩 0x100 + (4+3) = 0x112
장점: 검색이 빠르다. 인덱스를 이용해 원소에 바로 접근할 수 있다.(연산으로 접근이 쉬움)
단점: 수정이 어렵다. 중간에 수정이 일어나면 그 뒤의 모든 값의 이동이 일어난다. 연속 공간을 필요로해서 메모리 활용에 비효율적이다.

링크드리스트

값과 주소를 묶은 노드의 주소로 연결한 자료구조이다. 논리적 연속 공간이다. 각 노드가 다음 배열의 주소를 가지고 있다.
head는 첫 노드의 주소를 가리킨다.

장점: 주소로 연결되어 있어 수정이 빠르다.
선언할 때 크기를 지정하지 않고 주소로 연결하며, 연속 공간이 필요가 없어 메모리 활용이 효율적이다.
단점: 리스트 원소로 바로 접근이 불가능하다. Head주소부터 차례대로 순차접근 해야 한다.(연산으로 접근이 어렵다.)

0개의 댓글