Java - Stack & Queue

iseon_u·2022년 5월 22일
0

Java

목록 보기
54/77
post-thumbnail

Stack & Queue 스택과 큐


Stack 스택

  • LIFO 구조, 마지막에 저장된 것을 제일 먼저 꺼내게 된다.
  • 밑이 막힌 상자
  • 배열이 적합한 구조

Queue 큐

  • FIFO 구조, 제일 먼저 저장한 것을 제일 먼저 꺼내게 된다. (줄서기)
  • 양 끝이 뚫린 상자
  • 링크드 리스트가 적합한 구조

스택 메서드

  • Stack class - 객체 생성 가능
  • Stack st = new Stact();
메서드설명
boolean empty()Stack 이 비어있는지 알려준다.
Object peek()Stack 의 맨 위에 저장된 객체를 반환, pop() 과 달리 Stack 에서 객체를 꺼내지는 않는다.
Object pop()Stack 의 맨 위에 저장된 객체를 꺼낸다.
Object push(Object item)Stack 에 객체 (item) 를 저장한다.
int search(Object o)Stack 에서 주어진 객체 (o) 를 찾아서 그 위치를 반환, 못찾으면 -1 반환 (배열과 달리 0이 아닌 1부터 시작)

큐 메서드

  • Queue interface - 객체 생성 불가
  • Queue 인터페이스를 구현한 클래스 사용 → LinkedList
  • Queue q = new LinkedList();
메서드설명
boolean add(Object o)지정된 객체를 Queue 에 추가한다. 성공하면 true 반환
Object remove()Queue 에서 객체를 꺼내 반환 (비어있으면 예외 발생)
Object element()삭제 없이 요소를 읽어온다. (비어 있으면 예외 발생)
boolean offer(Object o)Queue 에 객체를 저장, 성공하면 true, 실패하면 false 반환
Object poll()Queue 에서 객체를 꺼내서 반환 (비어 있으면 null 반환)
Object peek()삭제 없이 요소를 읽어온다. (비어 있으면 null 반환)
profile
🧑🏻‍💻 Hello World!

0개의 댓글