stack

    [Java] 스택(Stack)과 큐(Queue) Java로 구현하기

    [Java] 스택(Stack)과 큐(Queue) Java로 구현하기

    이번 포스팅에서는 스택과 큐를 자바에서 구현하는 방법에 대해 설명하려고 한다. 스택(Stack)과 큐(Queue)의 대한 기본적인 개념은 이전 포스팅에 정리 했었다. 자바에서 Stack 사용하기 자바에서 스택은 Stack 클래스를 구현하여 제공하고 있다. Stack st = new Stack(); Stack의 메서드 메서드 설명 boolean empty() Stack이 비어있는지 확인 Object peek() Stack의 맨 위에 저장된 객체를 반환 pop()과 달리 Stack에서 객체를 꺼내지 않음 비었을 때는 EmptyStackException 반환 Object pop() Stack의 맨 위에 저장된 객체를 꺼냄 비었을 때는 EmptyStackException 반환 Object push(Object ..

    [Java] 프로그래머스 : 크레인 인형뽑기 게임

    [Java] 프로그래머스 : 크레인 인형뽑기 게임

    https://programmers.co.kr/learn/courses/30/lessons/64061?language=java 코딩테스트 연습 - 크레인 인형뽑기 게임 [[0,0,0,0,0],[0,0,1,0,3],[0,2,5,0,1],[4,2,4,4,2],[3,5,1,3,1]] [1,5,3,5,1,2,1,4] 4 programmers.co.kr 풀이 변수 doll : 꺼낸 인형을 넣을 리스트나 스택 doll board[i][m-1] : 꺼낸인형 answer : 터트린 인형개수 알고리즘 moves 만큼 for문 돌림 board의 길이만큼 for문 돌림 꺼낸인형(board[i][m-1]) 이 0일 경우에는 continue 꺼낸인형이 0이 아닐 시 doll에 넣은 마지막 인형과 같다면 인형을 터트리고 answ..

    [Data Structure] 스택(Stack)이란?

    [Data Structure] 스택(Stack)이란?

    스택(Stack) 이란? - 스택은 접근하는 것이 제한되어있는 나열 구조 - 삽입과 삭제가 목록의 끝인 "Top"에서만 가능하다. 쉽게 생각해서 말그대로 stack, 쌓여있는 것으로 예를 들어, 바닥에 동전을 여러개 쌓아올린다고 했을때 다시 동전을 치우려면 가장 나중에 쌓은 동전부터 치울 수 밖에 없다. 이처럼 스택은 한쪽이 막힌 구조라, 나머지 한 쪽에서만 넣고 뺄 수 있어 나중에 들어간 것이 먼저 나올 수 밖에 없는 구조이다. 그래서 스택은 '후입선출 방식의 자료구조', 또는 'LIFO(Last-In, First Out) 구조의 자료구조' 라고도 불린다. 자료를 넣는 것을 푸쉬(push), 반대로 꺼내는 것을 팝(pop)이라고 한다. 스택 연산 - pop() : 스택의 가장 윗 데이터(마지막에 저장된..