반응형
dackyy
대기의 연대기
dackyy
전체 방문자
오늘
어제
  • 분류 전체보기 (49)
    • java (7)
    • 코딩테스트 (23)
    • python (10)
    • Network (2)
    • Web (7)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 연산
  • 논리 연산자
  • 기본 자료형
  • 배열생성
  • 자료형
  • java
  • 반복문
  • TLS
  • 비교 연산자
  • 증감 연산자
  • 조건문
  • 제어문
  • SSL
  • 참조 자료형
  • 산술 연산자
  • https
  • switch
  • 시프트 연산자
  • 비트 연산자
  • 배열

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
dackyy

대기의 연대기

코딩테스트

[JAVA] BFS 넓이 우선 탐색 Stack 으로 구현

2022. 7. 30. 23:18
반응형
import java.util.Stack;

class QueueStack {
    Stack<Integer> oldStack;
    Stack<Integer> newStack;

    public QueueStack() {
        oldStack = new Stack<>();
        newStack = new Stack<>();
    }

    public void enqueue(int a) {
        oldStack.push(a);
    }

    public int dequeue() {
        int result = -1;

        if(newStack.isEmpty()) {
            while(!oldStack.isEmpty()) {
                newStack.push(oldStack.pop());
            }
            result = newStack.pop();
        }

        // 남아있으면 돌려주기
        if(!newStack.isEmpty()) {
            while(!newStack.isEmpty()) {
                oldStack.push(newStack.pop());
            }
        }

        return result;
    }
}

public class QueueStackMain {
    public static void main(String[] args) {
        QueueStack a = new QueueStack();
        a.enqueue(1);
        a.enqueue(2);
        a.enqueue(3);

        System.out.println(a.dequeue());
        System.out.println(a.dequeue());
        System.out.println(a.dequeue());
    }
}
class Index {
    private int x;
    private int y;

    public Index() {
    }

    public Index(int x, int y) {
        this.x = x;
        this.y = y;
    }

    public int getX() {
        return x;
    }
    public void setX(int x) {
        this.x = x;
    }
    public int getY() {
        return y;
    }
    public void setY(int y) {
        this.y = y;
    }
}
반응형

'코딩테스트' 카테고리의 다른 글

[JAVA] DFS 깊이 우선 탐색 Queue로 구현  (0) 2022.07.30
[Python] 코딩도장 23.7 지뢰찾기  (0) 2022.07.27
[python] 백준 알고리즘 2525 오븐 시계  (0) 2022.07.25
[JAVA] 팩토리얼 구하기 (재귀, 메모화)  (0) 2022.07.23
[JAVA] 피보나치 수열 구하기 (재귀, 메모화)  (0) 2022.07.23
    '코딩테스트' 카테고리의 다른 글
    • [JAVA] DFS 깊이 우선 탐색 Queue로 구현
    • [Python] 코딩도장 23.7 지뢰찾기
    • [python] 백준 알고리즘 2525 오븐 시계
    • [JAVA] 팩토리얼 구하기 (재귀, 메모화)
    dackyy
    dackyy

    티스토리툴바