본문 바로가기

분류 전체보기221

[알고리즘] 5-3 크레인 인형뽑기(카카오) - Stack (인프런 자바(Java) 알고리즘 문제풀이 : 코딩테스트 대비 강의) 인프런의 자바(Java) 알고리즘 문제풀이 : 코딩테스트 대비 강의를 수강하며 간략한 문제 설명, 예습 풀이 코드, 강의에서 설명하는 풀이 코드를 정리하고 있습니다. 문제 링크 : https://cote.inflearn.com/contest/10/problem/05-03 문제 설명 : https://programmers.co.kr/learn/courses/30/lessons/64061 예습 풀이 Stack 자료구조를 사용하여 풀이 package inflearn.stack_queue; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Stack; import j.. 2021. 6. 2.
[알고리즘] 5-1 올바른 괄호 - Stack 알고리즘(인프런 자바(Java) 알고리즘 문제풀이 : 코딩테스트 대비 강의) 인프런의 자바(Java) 알고리즘 문제풀이 : 코딩테스트 대비 강의를 수강하며 간략한 문제 설명, 예습 풀이 코드, 강의에서 설명하는 풀이 코드를 정리하고 있습니다. 문제 링크 : https://cote.inflearn.com/contest/10/problem/05-01 문제 설명 : 괄호로만 이루어진 문자열이 주어졌을때 여는 괄호, 닫는 괄호의 짝이 맞으면 YES, 아니면 NO를 출력하는 문제 예시 : (())) -> 닫는 괄호가 1개더 많기 때문에 NO 풀이 Stack 자료구조 사용 package inflearn.stack_queue; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; .. 2021. 6. 1.
[알고리즘] 4-4 모든 아나그램 찾기 - HashMap, Sliding Window 알고리즘(인프런 자바(Java) 알고리즘 문제풀이 : 코딩테스트 대비 강의) 인프런의 자바(Java) 알고리즘 문제풀이 : 코딩테스트 대비 강의를 수강하며 간략한 문제 설명, 예습 풀이 코드, 강의에서 설명하는 풀이 코드를 정리하고 있습니다. 강사님의 요청으로 문제를 통째로 올리지 못하는 점 양해 부탁드립니다. 문제 링크 : https://cote.inflearn.com/contest/10/problem/04-04 문제 설명 : S문자열에서 T문자열과 아나그램이 되는 부분 문자열의 개수를 구하는 문제 풀이 두개의 HashMap 사용, eqauls메서드로 아나그램인지 판단 Sliding window 알고리즘 사용 package inflearn.hashmap_treeset; import java.io.BufferedReader; import java.io.IOException; im.. 2021. 5. 31.
[Effective Java 3/E] 아이템5. 자원을 직접 명시하지 않고 의존 객체 주입을 사용하라 사용하는 자원에 따라 동작이 달라지는 클래스는 정적 유틸리티 클래스나 싱글턴 방식이 적합하지 않다. 사전(Dictionary)에 의존하는 맞춤법 검사기(Spell Checker)를 예로 들어보자. 사전은 언어별로 따로 있고, 테스트 용도 사전이 필요할 수도 있다. 하지만 두 방식 모두 하나의 사전만 사용할 수 있다. final 한정자를 제거하고 다른 사전으로 교체할 수도 있지만, 오류를 내기 쉬우며 멀티 스레드 환경에서는 사용할 수 없다. //정적 유틸리티를 잘못 사용한 예 - 유연하지 않고 테스트하기 어렵다. public class SpellChecker { private static final Lexicon dictionary = ...; private SpellChecker() {} //객체 생성 .. 2021. 5. 29.
[알고리즘] 4-3 매출액의 종류 - HashMap, Sliding Window 알고리즘(인프런 자바(Java) 알고리즘 문제풀이 : 코딩테스트 대비 강의) 인프런의 자바(Java) 알고리즘 문제풀이 : 코딩테스트 대비 강의를 수강하며 간략한 문제 설명, 예습 풀이 코드, 강의에서 설명하는 풀이 코드를 정리하고 있습니다. 강사님의 요청으로 문제를 통째로 올리지 못하는 점 양해 부탁드립니다. 문제 링크 : https://cote.inflearn.com/contest/10/problem/04-03 문제 설명 : n일간의 매출 기록과 연속구간의 길이 k가 주어지면 첫 번째 구간부터 각 구간별 매출액의 종류를 출력하는 문제 예습 풀이 HashMap과 Sliding window 알고리즘을 사용하여 풀이 package inflearn.hashmap_treeset; import java.io.BufferedReader; import java.io.IOException; .. 2021. 5. 29.
[알고리즘] 4-1 학급 회장 - HashMap(인프런 자바(Java) 알고리즘 문제풀이 : 코딩테스트 대비 강의) 인프런의 자바(Java) 알고리즘 문제풀이 : 코딩테스트 대비 강의를 수강하며 간략한 문제 설명, 예습 풀이 코드, 강의에서 설명하는 풀이 코드를 정리하고 있습니다. 문제 링크 : https://cote.inflearn.com/contest/10/problem/04-01 문제 설명 : 학급 회장 선거에 A,B,C,D,E 후보가 등록, 투표에 참여하는 반 학생수 n명과 투표 결과가 n개 길이의 문자열(문자열의 각 문자는 투표한 후보 알파벳)이 주어졌을 때 어떤 후보가 당선되었는지 출력하는 문제 예습 풀이 아스키 코드 값을 활용하여 득표 수를 저장하는 배열의 인덱스로 후보 알파벳을 사용. A의 아스키 코드 값은 65인 것을 활용하여, A의 배열 인덱스는 'A'-65로 0이다. package inflearn... 2021. 5. 28.