본문 바로가기
반응형

분류 전체보기14

[Java] Calendar 클래스 사용법 Calendar - 추상클래스 ==> 직접 객체를 생성할 수 없고 메서드를 통해 인스턴스를 얻어야한다. Calendar cal = new Calendar(); // 에러남. Calendar cal = Calendar.getInstance(); //이렇게 쓰기! 사용법 사용전 import java.util.Calendar; 를 써줘야한다. . get() Calendar에 정의된 static 상수들을 매개변수로 사용한다. //기본적으로 현재 날짜와 시간으로 설정됨. Calendar today = Calendar.getInstance(); //Calendar 클래스를 구현한 클래스의 인스턴스를 반환 today.get(Calendar.YEAR); // 연도 구하기. 상수라서 대문자 사용. today.get(Ca.. 2024. 3. 4.
시간복잡도(Time complexity)와 공간복잡도(Space complexity) 복잡도(complexity) 알고리즘 성능을 나타내는 척도 시간복잡도(Time Complexity) 어떤 문제를 해결하기 위한 알고리즘의 필요 연산횟수 *빅오(Big-O)표기법 : worst case 빅오메가 : 최선 빅 세타 : 중간 O(1) 상수 시간 O(logN) 로그 시간 O(N) 선형 시간 O(NlogN) 로그 선형 시간 O(N^2) 이차시간 O(2^N) 지수시간 지수시간에서 상수시간으로 갈수록 복잡도가 낮아진다. 공간복잡도(Space Complexity) 어떤 문제를 해결하기 위한 알고리즘의 필요메모리 사용량 빅오표기법을 통해 나타냄. 일반적으로 메모리 사용량 기준은 MB 단위 int[a] = new int [1000]; //4byte가 1000개 //4kb int[][] a = new int.. 2024. 2. 27.
제곱과 로그 제곱 같은 수를 두번 곱한 것. *마이너스 일 때 System.out.println(Math.pow(2,3)); //결과 8.0 System.out.println(Math.pow(2,-3)); //결과 0.125 제곱이 -일 경우 분모로 들어감. System.out.println(Math.pow(-2,-3)); //결과 -0.125 //pow 만들기 static double pow(int a, double b){ double result = 1; boolean isMinus = false; //음수인지 판별. if (b == 0) { return 1; } else if(b < 0) { //b가 음수인 경우 b *= -1; isMinus = true; } for (int i = 0; i < b; i++) .. 2024. 2. 27.
점화식(Recurrence), 재귀함수 점화식 어떤 수열의 일반항을 그 이전의 항들을 이용해 정의한 식 ex) 피보나치 수열 재귀함수 어떤 함수가 자신을 다시 호출해서 작업을 수행하는 방식 반환타입 함수이름 (매개변수) { 종료조건 (없을 시에는 무한루프됨.) ... 함수이름(...) } 3씩 곱해질 때의 n번째 수 구하기 // 1, 3, 9, 27, ... 의 n번째 수 int n = 4; int result = 1; for (int i = 0; i < n; i++) { if (i == 0) { result = 1; } else { result *= 3; } } System.out.println(result); //재귀함수로 구현 static int recursion(int n) { if(n == 1) { return 1; } return .. 2024. 2. 27.