본문 바로가기

전체 글

(133)
webclient로 json파싱할 때 주의할 점 아래와 같은 코드로 json response를 responseType 클래스에 대입하였음 //url로 요청 보내고 T타입 객체 받아옴 //Mono객체가 멀티스레딩에 유리함 public T getCustom(String baseUrl, String path, Object paramForm, Class responseType) { String url =makeRiotRequestUrl(baseUrl, path, paramForm); log.info("riot api request = {}",url); return WebClient.builder().build().get().uri(url) .accept(MediaType.APPLICATION_JSON) .retrieve() .bodyToMono(respons..
intelliJ java 버전 변경 1. 환경변수 새 자바 버전으로 변경 2. project Structure(ctrl + alt + shift + s) - platform settings - SDKs 새 버전으로 변경 3. project Structure(ctrl + alt + shift + s) - project - sdk 새 자바 버전으로 변경 4. setting - Build, Excution, Deployment - Gradle - Gradle JVM 새 자바 버전으로 변경 5. setting - Build, Excution, Deployment - Gradle - Build and run using, Run test using을 intelliJ로 변경 ---------- 해보고 안되면 + project Structure(ctrl..
Springboot h2 초기 세팅 (연결 ~ 테스트) 0. 프로젝트 생성 -> dependencies 설정되고있도록 일단 프로젝트의 build.gradle 로드 0-2. application.properties -> application.yml로 변경 git ignore에 *.yml 등록(안하면 db 털림) git add . git commit -"프로젝트 생성" git push yml이 git에 올라가지 않은 것 확인 *여기서 static이 안들어간건 걱정 ㄴㄴ 폴더 안ㅇ ㅔ파일이 없어서 그럼 H2 세팅 1. 데스크탑 h2 위치 C:\my2023programs\H2\bin 2. h2.bat 실행 3. url의 ip주소를 localhost로 변경 (이 방법으로 안 되면 그냥 안 바꾸고 ip로 시도) 4. JDBC URL 변경 jdbc:h2:C:\my2023..
배열의 구간 합 3 - 나머지 합 구하기 https://www.acmicpc.net/problem/10986 220928 10986번: 나머지 합 수 N개 A1, A2, ..., AN이 주어진다. 이때, 연속된 부분 구간의 합이 M으로 나누어 떨어지는 구간의 개수를 구하는 프로그램을 작성하시오. 즉, Ai + ... + Aj (i ≤ j) 의 합이 M으로 나누어 떨어지는 (i, j) www.acmicpc.net package day1.bj_10986; import java.util.Scanner; public class Main { public static void main(String[] args){ Scanner sc = new Scanner(System.in); int N = sc.nextInt(); int M = sc.nextInt();..
배열의 구간 합 2 - 2차원 배열의 구간 합 구하기 https://www.acmicpc.net/problem/11660 220928 11660번: 구간 합 구하기 5 첫째 줄에 표의 크기 N과 합을 구해야 하는 횟수 M이 주어진다. (1 ≤ N ≤ 1024, 1 ≤ M ≤ 100,000) 둘째 줄부터 N개의 줄에는 표에 채워져 있는 수가 1행부터 차례대로 주어진다. 다음 M개의 줄에는 네 www.acmicpc.net package day1.bj_11660; import java.util.*; import java.io.*; public class Main{ public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader (new InputStre..
배열의 구간 합 1 - 1차원 배열의 구간 합 구하기 https://www.acmicpc.net/problem/11659 11659번: 구간 합 구하기 4 첫째 줄에 수의 개수 N과 합을 구해야 하는 횟수 M이 주어진다. 둘째 줄에는 N개의 수가 주어진다. 수는 1,000보다 작거나 같은 자연수이다. 셋째 줄부터 M개의 줄에는 합을 구해야 하는 구간 i와 j www.acmicpc.net 매번 계산하지 말고 arr[n]까지의 합을 구해놓은 배열 sum을 구현하여 sum[b]-sum[a-1]을 이용해 a~b까지의 구간 합을 구한다 import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.IOException; import java.io.BufferedWriter; import..
알고리즘 복잡도 / Big-O / 점근적 분석 알고리즘 복잡도 알고리즘의 성능을 나타내는 척도 시간복잡도 - 알고리즘 수행 시간 공간복잡도 - 알고리즘 수행에 필요한 메모리 시간 복잡도(time complexity) 알고리즘의 수행시간 실제 수행시간은 실행환경의 영향을 받는다 실행 시간을 측정하는 대신 **연산의 실행 횟수**를 카운트 연산의 실행 횟수는 **입력 데이터의 크기에 관한 함수**로 표현한다 데이터의 크기가 같더라도 실제 데이터 내용에 따라서 달라진다 최악의 경우 시간복잡도: worst -case analysis 평균 시간 복잡도: average-case analysis 점근적 분석 어떤 함수(알고리즘 시간 복잡도)의 증가 양상을 다른 함수와의 비교로 표현함 입력되는 데이터의 크기에 따라 수행 시간과 공간을 얼마나 차지하는지 측정 정확한..
배열 배열이란 연속된 메모리 공간에 순차적으로 저장된 데이터 모음 임의접근이 용이하다.저장된 곳의 주소를 통해 매우 빠른 시간에 접근할 수 있는 자료구조 2번째 셀의 주소 = 시작주소 + 2*(자료형의 byte 수) 배열의 시작주소, 저장된 값의 타입(바이트 개수), 인덱스만으로 값이 저장된 주소 계산 가능 접근하고자 하는 데이터가 어디에 위치하건, 첫번째에 있는 데이터와 N번째에 있는 데이터에 접근하는데 드는 비용이 같다 대부분 프로그래밍 언어에서는 동일타입의 데이터를 저장함(int[]에는 int만) 정적배열, 동적배열이 있다. 정적배열 선언시 배열의 크기를 지정하고, 크기 변경 불가능 동적배열 일반 배열은 지정된 크기를 변경할 수 없지만, 동적배열은 배열 크기의 변경이 가능하다. 현재 지정된 배열의 크기가..