프로그래머스 12903번 - 가운데 글자 가져오기 요구사항 1. 단어의 s의 가운데 글자를 반환하라. 만약 단어의 길이가 짝수이면 가운데 2글자를 반환하면 된다. 요구사항 분석 및 풀이과정 1. 문자열의 from번째 문자부터 end번째 문자 이전까지의 문자열을 구하는 쉬운 방법은 substring(from, to)를 사용하면 됩니다. 주의하여야 할 점은 from은 포함(inclusive), to는 미포함(exclusive)이라는 점입니다. 2. 그러면 시작 인덱스와 끝(미포함) 인덱스를 계산해보면 단어의 길이가 홀수든 짝수든 상관없이 [(l-1)/2, l/2 + 1)라는 것을 알 수 있습니다. 소스코드 작성 class Solution { public String solution(String s) { re..
프로그래머스 1845번 - 폰켓몬 요구사항 1. 연구실에는 총 N마리의 폰켓몬이 있으며, N/2 마리를 가져갈 수 있다. 2. N/2 마리를 가져가되 가장 많은 종류의 폰켓몬을 가져가는 방법을 찾고, 그때 폰켓몬의 종류의 개수를 반환하라. 요구사항 분석 및 풀이과정 1. 연구실에 있는 총 N마리의 폰켓몬이 몇 종류의 폰켓몬인지를 구한다. 중복을 제거하기 위하여 Set을 사용한다. 2. 그런 후 종류의 가지 수와 N/2 마리 중 작은 값을 구하면 된다. 소스코드 작성 import java.util.Set; import java.util.HashSet; import java.util.Arrays; import java.util.stream.Collectors; class Solution { public in..
1편 - 스트림(Stream)에 대하여 - 현재 글 2편 - 스트림(Stream)의 사용 방법에 대하여 스트림이란 무엇인가? 공식 문서에 의하여 순차(sequence) 및 병렬(parallel) 집계(aggregate) 연산을 지원하는 데이터의 유한 또는 무한의 시퀀스를 의미합니다. 시퀀스라는 단어를 한글로 번역하기보다는 그대로 받아들이는 것이 더 좋은 것 같아 시퀀스라고 표현하겠습니다. 영어 Stream을 검색해보면 물이 졸졸 흐르는 물줄기 이런 말이 있습니다. 이를 우리의 시선에 맞게 해석하면 우리가 다루는 데이터들의 흐름이라고 생각하시면 됩니다. 그 흐름을 우리가 원하는 연산에 따라 제어를 하는 거죠. 스트림이 왜 나오게 되었는가? 표준화되지 않은 데이터 처리 방법 일반적으로 데이터 시퀀스를 다루는..
프로그래머스 12933번 - 정수 내림차순으로 배치하기 요구사항 1. 정수 n의 각 자릿수를 내림차순으로 정렬한 새로운 정수를 반환하라. 요구사항 분석 및 풀이과정 1. 정수의 n의 각 자릿수를 구하기 위하여 이전에 한번 사용했던 10진법 표기 방법을 이용하여 구한다. 2. 구한 정수의 각 자릿수를 오름차순을 정렬한다. 3. 오름차순으로 정렬한 이유는 base를 역순으로 곱해줄 것이기 때문이다. 소스코드 작성 import java.util.List; import java.util.ArrayList; import java.util.Collections; import java.util.stream.LongStream; class Solution { public long solution(long n) { Li..
프로그래머스 12910번 - 나누어 떨어지는 숫자 배열 요구사항 1. 배열의 원소 element 중 divisor로 나누어지는 element 들을 오름차순으로 정렬하여 반환하라. 요구사항 분석 및 풀이과정 1. 배열의 원소를 순회하면서 divisor로 나누어지는지 확인하여 나누어지는 element들만 배열에 따로 모은다. 2. 배열을 정렬한다. 3. 원소가 하나도 없다면 -1을 원소만을 가지는 배열을, 아니라면 정렬된 배열을 반환한다. 소스코드 작성 import java.util.Arrays; class Solution { public int[] solution(int[] arr, int divisor) { int[] answer = Arrays.stream(arr).filter(element -> el..
- Total
- Today
- Yesterday
- 카카오
- JPA
- 구현
- set
- 비트연산
- dsu
- 문자열
- 코딩인터뷰
- 정렬
- BFS
- sql
- 오늘의집
- kotlin
- Java
- 탐욕법
- Uber
- dfs
- 스택
- 회고
- k8s
- dp
- 코드 스니펫
- 프로그래머스
- TDD
- 쓰레드
- 연결리스트
- 우선순위큐
- 해쉬
- 스트림
- 알고리즘
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |