[IntelliJ] 자주 사용하는 단축키
2022. 4. 20. 16:31
DevTool/IntelliJ
soutv ~ 프린트 동시에 변수 바로 생성 Ctrl + Shift + enter ~ 세미콜론까지 자동 완성 후 다음 행 Ctrl + Shift + v ~ 자동 인스턴스 객체 생성 Ctrl + p ~ 파라미터 힌트 Ctrl + e ~ 과거 히스토리 파일 Ctrl + Shift + m ~ 리팩토링 fori, iter + tap --> ex) for ( int i : arr ) { } ~ for 문 자동 생성 Ctrl + n --> Allt + o (영역 변경) ~ 파일 찾기 Ctrl + Alt + b ~ 구현체 찾기 Ctrl + Shift + t ~ 테스트 클래스 자동 생성 Ctrl + Shift + f ~ 전체에서 단어 찾기 드래그 --> Ctrl + Alt + l ~ 코드 정렬 Alt + j ~ 멀티 ..
[Java] compareTo 메서드
2022. 4. 20. 16:14
Java
- Java comparteTo 메서드를 활용한 문자, 숫자 비교 - 기준값.compareTo(비교값) public int compareTo(Integer anotherInteger) { return compare(this.value, anotherInteger.value); } public static int compare(int x, int y) { return (x 비교값 : 1 을 각각 반환하게 된다. ex) 숫자 비교 예시 코드 public class Pr..
[Java] H-index
2022. 4. 20. 14:55
CodingTest
- 프로그래머스 / 정렬 / H-index - 문제설명 H-Index는 과학자의 생산성과 영향력을 나타내는 지표입니다. 어느 과학자의 H-Index를 나타내는 값인 h를 구하려고 합니다. 위키백과에 따르면, H-Index는 다음과 같이 구합니다. 어떤 과학자가 발표한 논문 n편 중, h번 이상 인용된 논문이 h편 이상이고 나머지 논문이 h번 이하 인용되었다면 h의 최댓값이 이 과학자의 H-Index입니다. 어떤 과학자가 발표한 논문의 인용 횟수를 담은 배열 citations가 매개변수로 주어질 때, 이 과학자의 H-Index를 return 하도록 solution 함수를 작성해주세요. 제한사항 과학자가 발표한 논문의 수는 1편 이상 1,000편 이하입니다. 논문별 인용 횟수는 0회 이상 10,000회..
[Java] 가장 큰 수
2022. 4. 19. 23:04
CodingTest
- 프로그래머스 / 정렬 / 가장 큰 수 - 문제설명 0 또는 양의 정수가 주어졌을 때, 정수를 이어 붙여 만들 수 있는 가장 큰 수를 알아내 주세요. 예를 들어, 주어진 정수가 [6, 10, 2]라면 [6102, 6210, 1062, 1026, 2610, 2106]를 만들 수 있고, 이중 가장 큰 수는 6210입니다. 0 또는 양의 정수가 담긴 배열 numbers가 매개변수로 주어질 때, 순서를 재배치하여 만들 수 있는 가장 큰 수를 문자열로 바꾸어 return 하도록 solution 함수를 작성해주세요. 제한사항 numbers의 길이는 1 이상 100,000 이하입니다. numbers의 원소는 0 이상 1,000 이하입니다. 정답이 너무 클 수 있으니 문자열로 바꾸어 return 합니다. 입출력..
[Java] K번째 수
2022. 4. 18. 20:56
CodingTest
- 프로그래머스 / 정렬 / K번째 수 - 문제설명 배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구하려 합니다. 예를 들어 array가 [1, 5, 2, 6, 3, 7, 4], i = 2, j = 5, k = 3이라면 array의 2번째부터 5번째까지 자르면 [5, 2, 6, 3]입니다. 1에서 나온 배열을 정렬하면 [2, 3, 5, 6]입니다. 2에서 나온 배열의 3번째 숫자는 5입니다. 배열 array, [i, j, k]를 원소로 가진 2차원 배열 commands가 매개변수로 주어질 때, commands의 모든 원소에 대해 앞서 설명한 연산을 적용했을 때 나온 결과를 배열에 담아 return 하도록 solution 함수를 작성해주세요. 제한사항 ar..
[Java] 베스트 앨범
2022. 4. 2. 16:51
CodingTest
- 프로그래머스 / 해시 / 베스트 앨범 - # 문제설명 스트리밍 사이트에서 장르 별로 가장 많이 재생된 노래를 두 개씩 모아 베스트 앨범을 출시하려 합니다. 노래는 고유 번호로 구분하며, 노래를 수록하는 기준은 다음과 같습니다. 속한 노래가 많이 재생된 장르를 먼저 수록합니다. 장르 내에서 많이 재생된 노래를 먼저 수록합니다. 장르 내에서 재생 횟수가 같은 노래 중에서는 고유 번호가 낮은 노래를 먼저 수록합니다. 노래의 장르를 나타내는 문자열 배열 genres와 노래별 재생 횟수를 나타내는 정수 배열 plays가 주어질 때, 베스트 앨범에 들어갈 노래의 고유 번호를 순서대로 return 하도록 solution 함수를 완성하세요. # 제한사항 genres[i]는 고유번호가 i인 노래의 장르입니다. pla..
[Java] 전화번호 목록
2022. 4. 2. 16:30
CodingTest
- 프로그래머스 / 해시 / 전화번호 목록 - # 문제설명 전화번호부에 적힌 전화번호 중, 한 번호가 다른 번호의 접두어인 경우가 있는지 확인하려 합니다. 전화번호가 다음과 같을 경우, 구조대 전화번호는 영석이의 전화번호의 접두사입니다. 구조대 : 119 박준영 : 97 674 223 지영석 : 11 9552 4421 전화번호부에 적힌 전화번호를 담은 배열 phone_book 이 solution 함수의 매개변수로 주어질 때, 어떤 번호가 다른 번호의 접두어인 경우가 있으면 false를 그렇지 않으면 true를 return 하도록 solution 함수를 작성해주세요. # 제한사항 phone_book의 길이는 1 이상 1,000,000 이하입니다. 각 전화번호의 길이는 1 이상 20 이하입니다. 같은 전화번..
[Java] 완주하지 못한 선수
2022. 4. 2. 15:43
CodingTest
- 프로그래머스 / 해시 / 완주하지 못한 선수 - # 문제설명 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요. # 제한사항 마라톤 경기에 참여한 선수의 수는 1명 이상 100,000명 이하입니다. completion의 길이는 participant의 길이보다 1 작습니다. 참가자의 이름은 1개 이상 20개 이하의 알파벳 소문자로 이루어져 있습니다. 참가자 중에는 동명이인이 있을 수 있습니다. # 입출력 예 particip..
[Java] 주식가격
2022. 3. 31. 14:05
CodingTest
- 프로그래머스 / 스택, 큐 / 주식가격 - # 문제설명 초 단위로 기록된 주식가격이 담긴 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하세요. # 제한사항 prices의 각 가격은 1 이상 10,000 이하인 자연수입니다. prices의 길이는 2 이상 100,000 이하입니다. # 입출력 예 prices return [1, 2, 3, 2, 3] [4, 3, 1, 1, 0] # 풀이과정 import java.util.*; class Solution3 { public ArrayList solution(int[] prices) { ArrayList answer = new ArrayList(); for (int i = 0..