=> 자료들을 순차적으로 나열시킨 자료구조
배열, 연결리스트, 스택, 큐가 있다.
자바에서 배열의 표현 방법
int[] odds = {1, 3, 5, 7, 9};
or
int[] odds = new int[3];
자료형 [] 형태로 나타내는데, 이는 배열자체가 자료형인것이 아니라 자료형들의 모임을 나타내는 것이다.
배열의 특징
1. 길이가 고정되어있다.
2. 다차원 배열 가능
3. 연속된 메모리의 공간 => 메모리 관리가 편하지만 크기가 고정되어있기때문에 삭제시 메모리 낭비가 된다.
java에서 List 인터페이스를 구현 한 클래스
ArrayList<Integer> arrList = new ArrayList<Integer>();
자주쓰는 메소드 add, get, isempty, size, remove(인덱스 또는 값으로 삭제할 수 있다)
배열과의 차이점
배열보다 느리지만 배열의 조작이 많이 필요한 경우 쓴다.
arraylist는 크기가 동적으로 늘어난다.
LinkedList<String> lnkList = new LinkedList<String>();
메소드는 arraylist와 거의 같다.
선형 구조의 메모리 공간에 데이터를 저장하면서 후입선출(LIFO)를 따름
Stack s=new Stack();
스택과 달리 별도의 인터페이스 형태로 제공 됨
리스트의 한 방향에서 삽입작업이, 반대편에는 제거 작업이 이루어지는 자료구조 선입선출(FIFO)를 따름
Queue q=new LinkedList<>();
offer(E e) : 큐의 맨뒤에 주어진 객체를 넣음
add(E e) : 큐의 맨뒤에 주어진 객체를 넣음 성공여부에 따라 true나 exception 반환
peek() : 큐의 맨앞에 있는(제일 먼저 저장된) 요소 반환 비었을 시 null
poll() : 큐의 맨앞에 있는 요소 반환 후 제거
remove() : 큐의 맨앞에 있는 요소 제거
element() : 큐의 맨앞에 있는 요소 반환
REFERENCE
링크텍스트
ARRYALIST
링크텍스트
링크텍스트