일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 공부
- javascript
- 에러
- 디자인패턴
- 독서리뷰
- Oracle
- 인코딩
- 알고리즘
- spring
- study
- 오라클
- 회고
- Head First Design Pattern
- 인강리뷰
- 우아한테크코스
- Design Pattern
- 프로그래머스
- 이펙티브자바
- 매핑
- 자바
- Singleton
- 인프런
- JPA
- Eclipse
- 독서
- math
- Java
- 카카오톡1차
- 후기
- 람다
- Today
- Total
목록자바 (65)
Lee's Grow up
문제 설명 정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요. 제한 사항 arr은 길이 1 이상, 100이하인 배열입니다. arr의 원소는 -10,000 이상 10,000 이하인 정수입니다. 입출력 예 arrreturn[ 1, 2, 3, 4 ] 2.5[ 5, 5 ] 5 나의 풀이 class Solution { public double solution(int[] arr) { double answer = 0; for(int i = 0; i < arr.length; i++) { answer += arr[i]; } return answer/(double)arr.length; } } 말 그대로 평균 계산입니다.... 다만 arr.length 가 int형으로 반환을 해주..
문제 설명 양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8 = 9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하샤드 수인지 아닌지 검사하는 함수 solution을 완성해주세요. 제한 조건 x는 1이상, 10000 이하인 정수입니다. 입출력 예 arr return 10 true 12 true 11 false 13 false 입출력 예 설명 번째 입출력 예 - 10의 모든 자릿수의 합은 1입니다. 10은 1로 나누어 떨어지므로 10은 하샤드 수입니다. 번째 입출력 예 - 12의 모든 자릿수의 합은 3입니다. 12는 3으로 나누어 떨어지므로 12는 하샤드 수입니다. 번째 입출력 예 - 11의 모든 ..
문제 설명 프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다. 전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 * 으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요. 제한 조건 s는 길이 4 이상, 20이하인 문자열입니다. 입출력 예 phone_number return "01033334444" "*******4444" "027778888" "*****8888" 나의 풀이 class Solution { public String solution(String phone_number) { String tempPhoneNumber = phone_number.substring(phone_numb..
문제 설명 행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요. 제한 조건 행렬 arr1, arr2의 행과 열의 길이는 500을 넘지 않습니다. 입출력 예 arr1 arr2 return [ [1,2], [2,3] ] [ [3,4], [5,6] ] [ [4,6], [7,9] ] [ [1], [2] ] [ [3], [4] ] [ [4], [6] ] 나의 풀이 class Solution { public int[][] solution(int[][] arr1, int[][] arr2) { int[][] answer = new int[arr1.length]..
문제 설명 함수 solution은 정수 x와 자연수 n을 입력 받아, x 부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 리턴해야 합니다. 다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요. 제한 조건 x는 -10,000,000 이상, 100,00,000 이하인 정수입니다. n은 1,000 이하인 자연수입니다. 입출력 예 x n return 2 5 [2,4,6,8,10] 4 3 [4,8,12] -4 2 [-4,-8] 나의 풀이 class Solution { public long[] solution(int x, int n) { long[] answer = new long[n]; answer[0] = x; for (int i = 1; i < answer.length; i+..
객체를 만들어야 할 때와 만들지 말아야 할 때를 구분하는 법, 올바른 객체 생성 방법과 불필요한 생성을 피하는 방법, 제때 파괴됨을 보장하고 파괴 전에 수행해야 할 정리 작업을 관리하는 요령을 알아봅니다. 아이템 목록 생성자 대신 정적 팩토리 메소드를 고려하라 생성자에 매개변수가 많다면 빌더를 고려하라 private 생성자나 열거 타입으로 싱글턴임을 보증하라 인스턴스화를 막으려거든 private 생성자를 사용하라 자원을 직접 명시하지 말고 의존 객체 주입을 사용하라 불필요한 객체 생성을 피하라 다 쓴 객체 참조를 해제하라 finalizer와 cleaner 사용을 피하라 try - finally 보다는 try - with - resources를 사용하라 1. 생성자 대신 정적 팩토리 메소드(static f..
문제 길이가 n이고, "수박수박수박수..."와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요, 예를들어 n이 4이면 "수박수박"을 리턴하고 3이라면 "수박수"를 리턴하면 됩니다. 제한 조건 n은 길이 10,000이하인 자연수입니다. 입출력 예 n return 3 "수박수" 4 "수박수박" 나의 풀이 class Solution { public String solution(int n) { StringBuilder sb = new StringBuilder(); for (int i = 0; i < n; i++) { sb = (i%2 ==0 ? sb.append("수") : sb.append("박")); } return sb.toString(); } }
문제 1부터 입력받은 숫자 n 사이에 있는 소수의 개수를 반환하는 함수, solution을 만들어 보세요. 소수는 1과 자기 자신으로만 나누어지는 수를 의미합니다. (1은 소수가 아닙니다. ) 제한 조건 n은 2이상 1000000이하의 자연수입니다. 입출력 예 n result 10 4 5 3 입출력 예 설명 입출력 예 #1 1부터 10 사이의 소수는 [ 2, 3, 5, 7 ] 4개가 존재하므로 4를 반환 입출력 예 #2 1부터 5 사이의 소수는 [ 2, 3, 5 ] 3개가 존재하므로 3을 반환 나의 풀이 class Solution { public int solution(int n) { int cnt = 0; int[] number = new int[n+1]; for(int i = 2; i