LIFO

    자바 메모리 영역(Method, Stack, Heap)

    자바의 메모리 공간은 크게 Method 영역, Stack 영역, Heap 영역으로 구분되고, 데이터 타입에 따라 할당된다. 메소드(Method) 영역 : 전역변수와 static변수를 저장하며, Method영역은 프로그램의 시작부터 종료까지 메모리에 남아있다. 스택(Stack) 영역 : 지역변수와 매개변수 데이터 값이 저장되는 공간이며, 메소드가 호출될 때 메모리에 할당되고 종료되면 메모리가 해제된다. LIFO(Last In First Out) 구조를 갖고 변수에 새로운 데이터가 할당되면 이전 데이터는 지워진다. 힙(Heap) 영역 : new 키워드로 생성되는 객체(인스턴스), 배열 등이 Heap 영역에 저장되며, 가비지 컬렉션에 의해 메모리가 관리되어 진다. 각 메모리 영역이 할당되는 시점 Method ..

    큐(Queue), 스택(Stack) 개념

    ◽ 큐(Queue) - 줄을 서서 기다리는 것. 시간 순서대로 처리해야하는 경우에 사용한다. - 선입선출(FIFO, First-In-Fisrt-Out) 구조로 가장 먼저 삽입된 자료가 가장 먼저 삭제된다. - 작업구역이 한 곳인 스택과 달리 큐는 한쪽 끝에서 삽입/다른 쪽 끝에서 삭제가 되어 양쪽에서 이루어진다. - 삭제연산이 수행되는 곳은 프론트(또는 머리, Front)이며 삭제연산을 디큐(dnQueue)라고 한다. - 삽입연산만 이루어지는 곳은 리어(또는 꼬리, Rear)이며 삽입연산을 인큐(enQueue)라고 한다. 예시) 메표소 대기열, 은행 업무, 게임 대전 매칭 시스템 등 ◽ 스택(Stack) - 차곡차곡 쌓는 것. 자료가 시간 순서에 따라 층층이 겹쳐 쌓인다. - 후입선출(LIFO, Last..