본문 바로가기

전체 글

(894)
[자바 알고리즘 인터뷰] 9장 스택,큐 (4) 큐를 이용한 스택 구현 https://leetcode.com/problems/implement-stack-using-queues/  - 큐를 이용해 다음 연산을 지원하는 스택을 구현하라.  push(x) : 엘리먼트 x를 스택에 삽입한다. pop() : 스택의 첫 번째 엘리먼트를 삭제한다. top() : 스택의 첫 번째 엘리먼트를 가져온다. empty() : 스택이 비어있는지 여부를 리턴한다.   풀이 1) push()할 때 큐를 이용해 재정렬  - 큐를 선언 하고 큐 추상 자료형의 기본 연산으로 구현  - 가장 복잡한 부분은 push()이다. - 엘리먼트를 삽입한 후에 방금 삽입한 엘리먼트를 맨 앞에 두는 상태로 전체를 재정렬하면 나머지는 기본적인 큐 연산으로 쉽게 구현이 가능하다.  class MyStack { //큐..
[자바 알고리즘 인터뷰] 9장 스택, 큐 (3) 일일 온도 https://leetcode.com/problems/daily-temperatures/description/  - 매일의 온도 리스트 temperatures를 입력받아서, 더 따뜻한 날씨를 위해서는 며칠을 더 기다려야 하는지를 출력하라   풀이 1) 스택 값 비교    - 현재의 인덱스를 계속 스택에 쌓아두다가, 이전보다 상승하는 지점에서 현재 온도와 스택에 쌓아둔 인덱스 지점의 온도 차이를 비교해서, 더 높다면 다음과 같이 스택의 값을 pop()으로 꺼내고, 현재 인덱스와 스택에 쌓아둔 인덱스의 차이를 정답으로 업데이트  - 그리고 현재 인덱스를 다시 스택에 삽입한다.   //현재 온도가 스택에 있는 온도보다 높다면 꺼내서 결과를 업데이트 while(!stack.isEmpty() && temperat..
[JAVA] 프로그래머스 - 외계어 사전 https://school.programmers.co.kr/learn/courses/30/lessons/120869 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr         정답  class Solution { public int solution(String[] spell, String[] dic) { int answer = 2; int count =0; for(int i=0; i
[JAVA] 프로그래머스 - 삼각형의 완성 조건(2) https://school.programmers.co.kr/learn/courses/30/lessons/120868 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr      정답  import java.util.Arrays;class Solution { public int solution(int[] sides) { int answer = 0; Arrays.sort(sides); //a>b int a = sides[1]; int b = sides[0]; ..
[JAVA] 프로그래머스 - 안전지대 https://school.programmers.co.kr/learn/courses/30/lessons/120866 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr       시도 1) class Solution { public int solution(int[][] board) { int answer = 0; int boardlen = board.length*board.length; for(int i=0; i  문제 풀이  [JAVA] 프로그래머스 Lv.0 - 안전지대 — 프로그래밍 고난일지 (tisto..
[JAVA] 프로그래머스 - 숨어있는 숫자의 덧셈(2) https://school.programmers.co.kr/learn/courses/30/lessons/120864 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr      문제 풀이 [Java] 자바 정규 표현식 (Pattern, Matcher) 사용법 & 예제 (tistory.com) [Java] 자바 정규 표현식 (Pattern, Matcher) 사용법 & 예제정규표현식(Regular Expression)이란 컴퓨터 과학의 정규언어로부터 유래한 것으로 특정한 규칙을 가진 문자열의 집합을 표현하기 위해 쓰이는 형식언어 입니다. 개발을 하다보면 전화번호, 주..
[JAVA] 프로그래머스 - 다항식 더하기 https://school.programmers.co.kr/learn/courses/30/lessons/120863 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr       시도 1) class Solution { public String solution(String polynomial) { StringBuilder answer = new StringBuilder(); int x0 = 0; // 상수항 int x1 = 0; // 일차항 polynomial = polynomial.replac..
[JAVA] 프로그래머스 - 최댓값 만들기(2) https://school.programmers.co.kr/learn/courses/30/lessons/120862 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr       정답  class Solution { public int solution(int[] numbers) { int answer = Integer.MIN_VALUE; for (int i = 0; i    다른 사람의 풀이  import java.util.*;class Solution { public int solution(int[] number..