[ITWILL : JSP]자료구조2 : Stack클래스, Queue인터페이스, Map인터페이스
💡 핵심 요약 (TL;DR)
자료구조2 : Stack클래스, Queue인터페이스, Map인터페이스의 동작 원리를 이해하고 실제 프로젝트에 적용하기 위한 실무 가이드다. * 스택은 클래스이지만 큐는 인터페이스이다 -> 따라서 큐는 객체생성을 할수없지만 구현을 통해서 생성가능하다을 적용할 수 있다.
ITWILL학원 : 27강 JSP기초 BY 정규태강사

1. 자료구조 : Stack 클래스
- top에서만 데이터의 입출력 발생하기 때문.
- LIFO 구조(FILO 구조) : 가장 먼저 들어온 데이터가 가장 마지막에 나가는 구조.
- 데이터 입력 -> push
- 데이터 빼내기 -> pop
- 장점 : 특정 자료구조의 형태로 처리했을때 데이터처리가 가장 효율적이다.
1 | Stack st = new Stack(); |
출력값을 보면 데이터가 빠져나가는 순서가 LIFO이다.
2. 자료구조 : Queue 인터페이스
- FIFO/LILO : 먼저 들어온 데이터가 먼저 처리되는 구조. 즉 입력된 순서대로 처리되는 구조
- First Input First Output
- Last Input Last Output
- 스택은 클래스이지만 큐는 인터페이스이다 -> 따라서 큐는 객체생성을 할수없지만 구현을 통해서 생성가능하다
- LinkedList 클래스 : 큐인터페이스를 구현한 클래스
- 인터페이스는 업캐스팅이 가능할까? ㅇㅇ 가능!
1 | Queue que = new LinkedList(); //업캐스팅(LinkedList클래스->Queue인터페이스) |
출력값을 보면 빠져나가는 순서가 FIFO이다.
3. 자료구조 : Map인터페이스
- Map, table 접미어가 붙은 자료구조이다.
- 데이터저장시 (키, 데이터)쌍으로 저장하여 사용하는 구조
- map은 인터페이스이므로 객체생성을 할수없지만 구현을 통해서 생성가능하다
- hashtable 클래스 : 맵인터페이스를 구현한 클래스
- 키값을 사용해서 검색 인덱스생성 -> 데이터 검색시간이 짧음.
- 참고링크 : 컬렉션 프레임워크 Map계열 자세히
- 예시 : Map계열의 hashtable
1 | Map m = new Hashtable(); //업캐스팅 |
[ITWILL : JSP]자료구조2 : Stack클래스, Queue인터페이스, Map인터페이스