목록후입선출 (2)
판봉 개발 일기
스택의 개념 스택은 리스트의 한쪽 끝으로만 자료의 삽입, 삭제 작업이 이루어지는 자료구조이다. 스택은 가장 나중에 삽입된 자료가 가장 먼저 삭제되는 후입섭출(LIFO)방식으로 자료를 처리합니다. TOP -Stack으로 할당된 기억공간에 가장 마지막으로 삽입된 자료가 기억된 위치를 가리키는 요소입니다. 또한스택 포인터라고도 합니다. BOottom : 스택의 가장 밑입니다. 자료의 삽입(Push) M : 스택의 크기 Top : 스택 포인터 X : 스택의 이름 Overflow : 스택으로 할당받은 메모리 부분의 마지막 주소가 M번지라고 할때, TOP Pointer의 값이 M보다 커지면 스택의 모든 기억장소가 꽉 채워져있는 상태이기에 더 이상 자료를 삽입할수 없어서 Overflow를 발생시킵니다. 자료의 삭제(..
LIFO 컬렉션은 "후입선출" 이라고도 한다. "후입선출"이라 함은 나중에 넣은 객체가 먼저 빠져나가는 자료구조를 말한다. LIFO 자료구조를 제공하는 Stack 클래스가 존재한다. "Stack"은 위의 사진 처럼 세로를 연상하면 이해가 쉬울 것 같다. 다음 표는 Stack 클래스의 주요 메소드이다. 리턴 타입 메소드 설명 E push(E item) 주어진 객체를 스택에 넣음 E peek() 스택의 맨 위 객체를 가져옴 객체를 스택에서 제거하지 않음 E pop() 스택의 맨 위 객체를 가져오지만 객체를 스택에서 제거함 Stack 객체를 생성하는 방법은 아래와 같다. Stack stack = new Stack(); Stack stack = new Stack(); // 왼쪽 Stack에 지정된 타입을 자동으..