본문 바로가기
728x90

Language/Java144

[Java 봐 | 알고리즘] 완전 탐색 🔎 완전 탐색이란?모든 경우의 수를 시도하여 정답을 찾는 방법상대적으로 간단하지만 경우의 수가 많아지면 시간이 오래 걸림.무식하게 푼다`는 의미로 Brute Force라고도 함.완전 탐색 기법 종류Brute Force비트 마스크재귀함수순열단순 Brute-Force특별한 기법 없이 for문과 if문으로 모든 경우의 수를 체크하여 답을 구함.이 방법으로 해결할 수 있는 문제가 많지 않음문제 일부분을 해결할 때 사용비트마스크(Bitmask)각 원소를 두 가지 상태로 분류 할 수 있을 때 사용모든 경우의 수에서각각의 원소가 포함되는 경우각각의 원소가 포함되지 않는 경우ex) 원소 n개인 집합의 부분 집합 구하기재귀함수재귀(Recursion) : 자기 자신을 호출한다.함수가 자기 자신을 호출하여 작업을 수행 .. 2024. 5. 28.
[Programmers | Java | 완전 탐색 문제 풀이] 최소 직사각형 Solution with Brute Force 99클럽 2기 | 자바 | 비기너KDT 실무형 스프링 백엔드 엔지니어 양성과정 6기 | Algorithm CODEKATA🔲 최소 직사각형🏷 관련 주제 : 완전 탐색문제 설명명함 지갑을 만드는 회사에서 지갑의 크기를 정하려고 합니다.다양한 모양과 크기의 명함들을 모두 수납할 수 있으면서, 작아서 들고 다니기 편한 지갑을 만들어야 합니다.이러한 요건을 만족하는 지갑을 만들기 위해 디자인팀은 모든 명함의 가로 길이와 세로 길이를 조사했습니다.아래 표는 4가지 명함의 가로 길이와 세로 길이를 나타냅니다.명함 번호가로 길이세로 길이16050230703603048040가장 긴 가로 길이와 세로 길이가 각각 80, 70이기 때문에 80(가로) x 70(세로) 크기의 지갑을 만들면 모든 명함들을 수납할 수 있습.. 2024. 5. 28.
[Programmers | Java | 코딩테스트 입문 문제 풀이] 두 수의 차 Solution with Arithmetic Operator KDT 실무형 스프링 백엔드 엔지니어 양성과정 6기  |  Algorithm CODEKATA🆎 두 수의 차🏷 Topic : 연산자문제 설명정수 num1과 num2가 주어질 때, num1에서 num2를 뺀 값을 return하도록 soltuion 함수를 완성해주세요.제한사항-50000 ≤ num1 ≤ 50000-50000 ≤ num2 ≤ 50000입출력 예num1num2result23-1100298입출력 예 설명입출력 예 #1num1이 2이고 num2가 3이므로 2 - 3 = -1을 return합니다.입출력 예 #2num1이 100이고 num2가 2이므로 100 - 2 = 98을 return합니다.✔ Solution with Arithmetic Operatorsclass Solution { publ.. 2024. 5. 28.
[Programmers | Java | "정렬" 문제 풀이] H-Index - Solution with sort & for statement 📚 H-Index🔖 Topic : 정렬문제 설명H-Index는 과학자의 생산성과 영향력을 나타내는 지표입니다.어느 과학자의 H-Index를 나타내는 값인 h를 구하려고 합니다. 위키백과1에 따르면, H-Index는 다음과 같이 구합니다.어떤 과학자가 발표한 논문 n편 중, h번 이상 인용된 논문이 h편 이상이고 나머지 논문이 h번 이하 인용되었다면 h의 최댓값이 이 과학자의 H-Index입니다.어떤 과학자가 발표한 논문의 인용 횟수를 담은 배열 citations가 매개변수로 주어질 때, 이 과학자의 H-Index를 return 하도록 solution 함수를 작성해주세요.제한사항과학자가 발표한 논문의 수는 1편 이상 1,000편 이하입니다.논문별 인용 횟수는 0회 이상 10,000회 이하입니다.입출력 .. 2024. 5. 27.
[LeetCode | Java | Binary Search 문제 풀이] 2824. Count Pairs Whose Sum is Less than Target - Solution with 이중for문 99클럽 | Java | 비기너2824.Count Pairs Whose Sum is Less than Target🏷 Topic : Array Two Pointers Binary Search SortingEasyGiven a 0-indexed integer array nums of length n and an integer target, return the number of pairs (i, j) where 0 and nums[i] + nums[j] .Example 1: Input: nums = [-1,1,2,3,1], target = 2 Output: 3 Explanation: There are 3 pairs of indices that satisfy the conditions in th.. 2024. 5. 27.
[ Java ] Java 래퍼런스(API Documentation) 참고하기 Oracle HelpCenter에서 Java래퍼런스 페이지 찾아가는 방법 Java 래퍼런스 페이지 링크 Java Platform SE 8 docs.oracle.com 위 링크된 주소에서 원하는 JDK 버전 숫자로 변경하면 상위버전이나 하위버전으로도 잘 링크됨. (그런데 JDK 11이상으로 링크했다가 다시 하위 버전 API문서로는 링크 안됨) 2023. 2. 27.
[ Java ] 배열 비교하기 배열 비교하는 방법 == 연산자를 사용하기 for 반복문 사용하기 Arrays.equals() 메서드 사용하기 Arrays.deepEquals()메서드 사용하기 1. == 연산자를 사용하기 public class CompareArrays { public static void main(String[] args){ int[] arr1 = {2, 4, 6}; int[] arr2 = {2, 4, 6}; if(arr1 == arr2){ System.out.println("arr1과 arr2는 동일한 배열입니다."); }else{ System.out.println("arr1과 arr2는 동일한 배열이 아닙니다."); } } } 2. for 반복문 사용하기 public class CompareArrays { publ.. 2023. 2. 9.
[ Java ] String.format 함수 - String의 static 메서드로서 문자열 형식을 설정하는 메서드 Integer Formatting String.format("%d", 정수형변수); 10진수 정수형을 설정할 때, 사용합니다. int num = 123; // String.format("%d", 정수) System.out.println(String.format("%d", num)); // 123 // 정렬하기 (cf. 왼쪽 정렬, 오른쪽 정렬을 확인하기 위해 정수형변수 뒤에 |를 붙여주었습니다.) System.out.println(String.format("%d|", num)); // 123| // 오른쪽 정렬(default) : String.format("%문자열길이d",정수) // 문자열 길이 : 정수형 변수를 포함한 문자열 길이.. 2023. 2. 6.
[ Java ] Enum 클래스 프로그래머스 Lv.0 양꼬치 문제를 풀고 다른 사람의 풀이를 보며 공부를 하던 중, 뭔가 문제 난이도에 비해 엄청난 코드를 발견했다! 뭔가 약간 too much가 아닌가 싶기도 하지만 변수명 정하는 방법이나 내가 모르는 Enum클래스 등 여러가지로 주의깊게 보고 싶은 부분이 많아서 오늘은 Enum 클래스에 대해 알아보기로 했다. class Solution { public int solution(int n, int k) { int lambTotalPrice = totalPrice(Menu.LAMB, n); int drinkTotalPrice = totalPrice(Menu.DRINK, k); int discountPrice = discount(Menu.DRINK, n); int totalPay = lamb.. 2023. 1. 25.
728x90


Top