본문 바로가기

개인 공부185

[Java] Java 제어문 ✍️ 학습 목표 : Java 제어문과 친해지기! 선택문 반복문 📌 제어문 코드의 흐름을 조정하는 제어하는 구문이다. 3가지로 나누어 볼 수 있다. 선택문 : if-then, if-then-else, switch 반복문 : for, while, do-while 분기문 : break, continue, return 📌 선택문 선택지에 따라서 다른 문장이 수행되도록 하는 구문이다. ✔️ IF 문 // Example if (condition1) { ... } else if (condition2) { ... } else { ... } 가장 기본적인 선택문이다. 주어진 조건에 따라서 맞는 블록을 실행한다. 조건식의 결과는 참과 거짓 뿐이라 'else if'를 추가해야만 더 많은 조건을 따질 수 있다. 하나의 조건식.. 2022. 8. 16.
[Python] 백준 18352번 : 특정 거리의 도시 찾기 https://www.acmicpc.net/problem/18352 18352번: 특정 거리의 도시 찾기 첫째 줄에 도시의 개수 N, 도로의 개수 M, 거리 정보 K, 출발 도시의 번호 X가 주어진다. (2 ≤ N ≤ 300,000, 1 ≤ M ≤ 1,000,000, 1 ≤ K ≤ 300,000, 1 ≤ X ≤ N) 둘째 줄부터 M개의 줄에 걸쳐서 두 개 www.acmicpc.net 💡 문제 풀이 그래프 탐색 문제이다. BFS와 다익스트라 알고리즘 2가지로 해결할 수 있다. 출발지점부터 큐에 넣고 가중치를 계산해주면 된다. ✔️ 느낀 점 코드를 짜다보니 어쩌다 보니 BFS로 구현했다. 💻 코드 import sys from collections import deque input = sys.stdin.rea.. 2022. 8. 16.
[Java] Java의 연산자 ✍️ 학습 목표 Java가 제공하는 다양한 연산자를 알아보기. 산술 연산자 비트 연산자 관계 연산자 논리 연산자 instanceof assignment(=) operator 화살표(->) 연산자 3항 연산자 연산자 우선순위 switch 연산자 📌 산술 연산자 기본적인 수학 계산에 사용되는 연산자들을 말한다. 7가지 연산자가 존재한다. (+, -, *, /, %, ++, --) 나눗셈은 타입에 따라 다른 결과가 나온다. (int, float) 다른 타입끼리 산술 연산을 하면 더 큰 범위로 자동 형변환이 이루어진다. 문자도 산술 연산이 가능하다. 문자가 유니코드로 바꾸어 저장되기 때문이다. // Examples int x = 10; int y = 4; System.out.printf("%d / %d = %d.. 2022. 8. 15.
[Python] 백준 1744번 : 수 묶기 https://www.acmicpc.net/problem/1744 1744번: 수 묶기 길이가 N인 수열이 주어졌을 때, 그 수열의 합을 구하려고 한다. 하지만, 그냥 그 수열의 합을 모두 더해서 구하는 것이 아니라, 수열의 두 수를 묶으려고 한다. 어떤 수를 묶으려고 할 때, 위치에 www.acmicpc.net 💡 문제 풀이 그리디 알고리즘 문제이다. 수를 묶는 기준을 가장 큰 값이 되는 기준을 찾아내면 된다. 같은 부호끼리는 곱해도 되지만 부호가 다르면 그냥 더하는게 곱하는 것보다 큰 값이 나온다. 0은 양수는 더하는게 크지만 음수는 곱하는게 더 큰 값이 나온다. 1은 양수, 음수 모두 더하는게 더 큰 값이 나온다. 이런 이유로 입력받는 값들을 나누어줘야하는데 음수(+ 0), 양수, 1로 나눠서 입력.. 2022. 8. 15.
[Spring] Spring Data JPA (2) 📌 기본 설정 Spring Boot 프로젝트를 생성할 때 'Auto Configuration'이라는 기능 덕분에 관련된 설정이 자동으로 추가된다. Spring Data JPA도 마찬가지이지만 구체적인 값을 지정해야 데이터베이스를 사용할 수 있다. DB를 위한 JDBC 드라이버 설정하기 Spring Boot 프로젝트 내 DB 설정하기 ✔️ Application.properties 설정 (프로젝트 내 DB 설정) spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.datasource.url=jdbc:mysql://localhost:3306/{DB명} spring.datasource.username= spring.datasource.passwor.. 2022. 8. 13.
[Spring] Spring Data JPA란? 📌 Spring Data JPA란? JPA 구현체(Hibernate)를 좀 더 쉽게 사용하고자 추상화시킨 모듈 Spring Boot에서 쉽게 사용할 수 있는 추가적인 API를 제공한다. 📌 Hibernate VS Spring Data JPA 사실 Hibernate와 Spring Data JPA를 사용하는 것은 큰 차이가 없는데 왜 Spring Data JPA가 등장했을까? ✔️ 구현체 교체의 용이성 구현체 교체의 용이성이란? Hinernate 외에 다른 구현체로 쉽게 교체할 수 있다는 뜻이다. Spring Data JPA 내부에서 구현체 매핑을 지원해주기 때문에 새로운 구현체가 등장하면 쉽게 옮길 수 있다. ✔️ 저장소 교체의 용이성 저장소 교체의 용이성이란? 관계형 데이터베이스 외에 다른 저장소로 쉽게.. 2022. 8. 13.