본문 바로가기

분류 전체보기110

[Java] 제곱근(루트) 구하기 Math.sqrt() 최근 제곱근을 구하는 알고리즘 문제를 풀면서 sqrt() 메서드를 알게 됐다. sqrt 메서드는 Math 클래스의 메서드이다. Java.lang.Math 클래스 Math 클래스는 수학에서 자주 사용하는 상수들과 함수들을 미리 구현해 놓은 클래스이다. Math 클래스의 모든 메소드는 클래스 메소드(static method)이다. 따라서 객체( instance)를 생성하지 않아도 메소드를 바로 사용할 수 있다. 이러한 Math클래스는 java.lang 패키지에 포함되어 제공된다. Math.sqrt() @HotSpotIntrinsicCandidate public static double sqrt(double a) { return StrictMath.sqrt(a); // default impl. delegate.. 2022. 6. 12.
[알고리즘] 프로그래머스(Level1) - 짝수와 홀수(Java) https://programmers.co.kr/learn/courses/30/lessons/12937 코딩테스트 연습 - 짝수와 홀수 정수 num이 짝수일 경우 "Even"을 반환하고 홀수인 경우 "Odd"를 반환하는 함수, solution을 완성해주세요. 제한 조건 num은 int 범위의 정수입니다. 0은 짝수입니다. 입출력 예 num return 3 "Odd" 4 "Even" programmers.co.kr 문제 설명 정수 num이 짝수일 경우 "Even"을 반환하고 홀수인 경우 "Odd"를 반환하는 함수, solution을 완성해주세요. 제한 조건 num은 int 범위의 정수입니다. 0은 짝수입니다. 입출력 예 num return 3 "Odd" 4 "Even" 코드 class Solution { p.. 2022. 6. 12.
[Java] 문자열 반복(곱하기) 메소드 repeat java에서 문자열 반복을 할 수 있는 메소드가 없을까 찾아보다가 알게 된 repeat 메소드에 대해 소개하려고 한다. python에서는 *연산자를 사용하면 해당 문자열을 반복하는 것이 가능히다. java에선 *연산자를 이용해 문자열을 반복하는 것이 불가능하다. 하지만 이와 같은 기능을 제공하는 String 메소드 repeat이 있다. java 11에 새로 추가된 String 메소드로 문자열을 주어진 횟수만큼 반복한다. 이 메소드를 모르시는 분들이 많아 for문을 이용해 문자열을 반복하시는 경우가 많은데 알아두면 편하고 유용하게 쓰일 것 같은 메소드이다. 사용 예제로는 아래 프로그래머스 코딩테스트 연습 문제이다. https://programmers.co.kr/learn/courses/30/lessons/.. 2022. 6. 12.
[알고리즘] 프로그래머스(Level1) - 최대공약수와 최소공배수(Java) / 최대공약수와 최소공배수 알고리즘(유클리드 호제법) https://programmers.co.kr/learn/courses/30/lessons/12940 코딩테스트 연습 - 최대공약수와 최소공배수 두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환하는 함수, solution을 완성해 보세요. 배열의 맨 앞에 최대공약수, 그다음 최소공배수를 넣어 반환하면 됩니다. 예를 들어 두 수 3, 12의 programmers.co.kr 최대공약수 최대공약수를 구하는 방법 중 가장 쉬운 공식에는 유클리드 호제법이 있다. 유클리드 호제법이 무엇인지 알기에 앞서 왜 쓰는 지에 대해서 알아보자. 2개의 자연수를 받아 최대공약수를 구하기 위해 1부터 두 자연 수 중 작은 자연수까지 모두 나누어 보면 최대공약수를 구할 수 있다. 하지만 이 방법의 시간복잡도는 O(N)이다... 2022. 6. 11.
[알고리즘] 프로그래머스(Level1) - 평균 구하기(Java) https://programmers.co.kr/learn/courses/30/lessons/12944 코딩테스트 연습 - 평균 구하기 정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요. 제한사항 arr은 길이 1 이상, 100 이하인 배열입니다. arr의 원소는 -10,000 이상 10,000 이하인 정수입니다. 입출력 예 arr programmers.co.kr 코드 class Solution { public double solution(int[] arr) { double answer = 0; double sum = 0; for(int i : arr) sum += i; answer = sum/arr.length; return answer; } } 2022. 6. 10.
[알고리즘] 프로그래머스(Level1) - 핸드폰 번호 가리기(Java) https://programmers.co.kr/learn/courses/30/lessons/12948 코딩테스트 연습 - 핸드폰 번호 가리기 프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다. 전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자 programmers.co.kr 문제 설명 프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다. 전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요. 제한 조건 phone_number는 길이 4 이상, 2.. 2022. 6. 9.