Stack
[프로그래머스]같은 숫자는 싫어 - Python
문제 https://school.programmers.co.kr/learn/courses/30/lessons/12906 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 Level 1 문제 문제를 읽다보면 자연스럽게 스택을 생각하게 되는데, 파이썬에서는 List로 많은 자료구조를 커버할 수 있는 듯 ! 💡 arr.append() 파이썬에는 자바와 다르게 Array와 List의 구분이 있지 않다. 파이썬의 List에서는 append() 함수를 이용해서 List의 끝에 요소를 추가할 수 있다 ! 이 문제에서는 List를 Stack으로 사용하려고 함. Sta..
[프로그래머스]짝지어 제거하기 - Java
문제 https://school.programmers.co.kr/learn/courses/30/lessons/12973 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 반복문 안에서 문자 하나하나 앞뒤를 비교해가면서 문제를 풀 수도 있지만 자료구조를 잘 활용하면 반복문으로 한번 더 안감싸고 더 쉽게 풀 수 있음 !!! 여기서 말한 자료구조는 Stack임 ! Stack을 이용하면 반복문을 여러번 돌 필요가 없이, Stack에 데이터를 넣을 때마다 비교를 통해서 문자열을 짝지어서 제거할지 안할지 정할 수 있음 코드를 보면 무슨 말인지 알 수 있을거임 ! ..
[CS스터디]220705 자료구조 - 2
Stack, Queue에 대해서 설명해주세요. Stack LIFO(Last In First Out, 후입선출) push(), pop() 활용 예시 웹 브라우저 방문 기록 역순 문자열 만들기 실행 취소 후위 표기법 수식의 괄호 검사 등 Queue FIFO(First In First Out, 선입선출) offer(), poll() 활용 예시 우선순위가 같은 작업 예약(프린터의 인쇄 대기열) 은행 업무 콜센터 고객 대기시간 프로세스 관리 등 Heap, Priority Queue에 대해서 설명해주세요. Heap 완전 이진 트리(Complete Binary Tree)로 구성된 자료구조 모든 노드에 저장된 값들은 자식 노드들의 것보다 크거나 같다. 부모는 자식보다 항상 우선순위가 높다 그렇기 때문에 루트 노드가 항..
[프로그래머스]주식가격 - Java
문제 https://programmers.co.kr/learn/courses/30/lessons/42584 코딩테스트 연습 - 주식가격 초 단위로 기록된 주식가격이 담긴 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하세요. 제한사항 prices의 각 가격은 1 이상 10,00 programmers.co.kr 풀이 왜 스택/큐 문제인지 모르겠음 현재의 가격 안에서 for문을 돌리면서 다음 가격과의 비교를 통해서 현재 인덱스의 가격을 하나씩 증가해주어서 해결했음!! 코드 // 코딩테스트 연습 - 스택/큐 - 주식가격 // https://programmers.co.kr/learn/courses/30/lessons/42584 ..
[프로그래머스]크레인 인형뽑기 게임 - Java
문제 https://programmers.co.kr/learn/courses/30/lessons/64061?language=java 풀이 레벨 1 문제라 쉽게 풀었음 board[][]를 ArrayList랑 Stack으로 구현해도 될 것 같긴한데 그냥 배열로 해주는게 오히려 더 간편한 듯? 바구니는 쉽게 Stack을 사용했음! 코드보면 쉽게 이해할 수 있을거임 ㅎㅎ ㄱㄱ 코드 // 코딩테스트 연습 - 2019 카카오 개발자 겨울 인턴십 - 크레인 인형뽑기 게임 // https://programmers.co.kr/learn/courses/30/lessons/64061?language=java package PROGRAMMERS.level1; import java.util.Stack; public class ..