[인프런 알고리즘] Chapter 6, 7번 문제(좌표 정렬)
자료구조 & 알고리즘/Inflearn2024. 8. 21. 13:05[인프런 알고리즘] Chapter 6, 7번 문제(좌표 정렬)

이 알고리즘 문제는 인프런의 자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비 (김태원)의 문제입니다.문제 설명 코드import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.ArrayList;import java.util.Collections;import java.util.StringTokenizer;public class sec06_07 { public static class Point{ private int x; private int y; public Point(int x, int y) { ..

[DB 성능 최적화] 인덱스(Index)
데이터베이스/MySQL2024. 8. 21. 00:51[DB 성능 최적화] 인덱스(Index)

이 글은 인프런의 MySQL 성능 최적화 입문/실전 (SQL 튜닝편) (박재성) 강의를 듣고 개인적으로 정리하는 글임을 알립니다.MySQL 아키텍쳐MySQL의 아키텍처를 간단하게 표현하자면 위와 같다.클라이언트가 DB에 SQL 요청을 보낸다. MySQL 엔진에서 옵티마이저가 SQL문을 분석한 뒤 빠르고 효율적으로 데이터를 가져올 수 있는 계획을 세운다.어떤 순서로 테이블에 접근할 지, 인덱스를 사용할 지, 어떤 인덱스를 사용할 지 등을 결정한다.(옵티마이저가 세운 계획은 완벽하지 않다. 따라서 SQL 튜닝이 필요하다.)옵티마이저가 세운 계획을 바탕으로 스토리지 엔진에서 데이터를 가져온다. (DB 성능에 문제가 생기는 대부분의 원인은 스토리지 엔진으로부터 데이터를 가져올 때 발생한다. 데이터를 찾기가 어려..

[인프런 알고리즘] Chapter 6, 6번 문제(장난꾸러기)
자료구조 & 알고리즘/Inflearn2024. 8. 20. 12:55[인프런 알고리즘] Chapter 6, 6번 문제(장난꾸러기)

이 알고리즘 문제는 인프런의 자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비 (김태원)의 문제입니다.문제 설명 코드import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.ArrayList;import java.util.Arrays;import java.util.StringTokenizer;public class sec06_06 { public static ArrayList solution(int[] arr) { int[] copy = arr.clone(); ArrayList answer = new ArrayList(); ..

[Query DSL] Spring Data JPA와 Query DSL 통합(+ Query DSL 페이징 최적화)
Back-End/QueryDSL2024. 8. 20. 00:07[Query DSL] Spring Data JPA와 Query DSL 통합(+ Query DSL 페이징 최적화)

이 글은 인프런 김영한님의 Spring 강의를 바탕으로 개인적인 정리를 위해 작성한 글입니다.Query DSL을 Spring Data JPA에서 사용하려면 사용자 정의 리포지토리를 만들어야 한다. MemberTeamDto@Datapublic class MemberTeamDto { private Long memberId; private String username; private int age; private Long teamId; private String teamName; @QueryProjection public MemberTeamDto(Long memberId, String username, int age, Long teamId, String teamName) ..

[Query DSL] 중급 문법
Back-End/QueryDSL2024. 8. 19. 00:47[Query DSL] 중급 문법

이 글은 인프런 김영한님의 Spring 강의를 바탕으로 개인적인 정리를 위해 작성한 글입니다.테스트 기본 코드@Entity@Getter @Setter@NoArgsConstructor(access = AccessLevel.PROTECTED)@ToString(of = {"id", "username", "age"})public class Member { @Id @GeneratedValue @Column(name = "member_id") private Long id; private String username; private int age; @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "team_id") privat..

[인프런 알고리즘] Chapter 6, 5번 문제(중복 확인)
자료구조 & 알고리즘/Inflearn2024. 8. 18. 11:36[인프런 알고리즘] Chapter 6, 5번 문제(중복 확인)

이 알고리즘 문제는 인프런의 자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비 (김태원)의 문제입니다.문제 설명 코드import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.HashSet;import java.util.StringTokenizer;public class sec06_05 { public static char solution(int[] arr) { HashSet set = new HashSet(); for (int i : arr) set.add(i); return (arr.length == set.size())..

[Query DSL] 기본 문법
Back-End/QueryDSL2024. 8. 18. 00:25[Query DSL] 기본 문법

이 글은 인프런 김영한님의 Spring 강의를 바탕으로 개인적인 정리를 위해 작성한 글입니다.EntityManager 로 JPAQueryFactory 생성Querydsl은 JPQL 빌더JPQL: 문자(실행 시점 오류), Querydsl: 코드(컴파일 시점 오류)JPQL: 파라미터 바인딩 직접, Querydsl: 파라미터 바인딩 자동 처리JPAQueryFactory를 필드로 제공하면 동시성 문제는 JPAQueryFactory를 생성 할 때 제공하는 EntityManager(em)에 달려있다. 스프링 프레임워크는 여러 쓰레드에서 동시에 같은 EntityManager에 접근해도, 트랜잭션 마다 별도의 영속성 컨텍스트를 제공하기 때문에, 동시성 문제는 걱정하지 않아도 된다. 테스트 기본 코드@Entity@Get..

[인프런 알고리즘] Chapter 06, 4번 문제(Least Recently Used)
자료구조 & 알고리즘/Inflearn2024. 8. 17. 13:57[인프런 알고리즘] Chapter 06, 4번 문제(Least Recently Used)

이 알고리즘 문제는 인프런의 자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비 (김태원)의 문제입니다.문제 설명 코드import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class sec06_04 { public static int[] solution(int S, int[] arr) { int[] cache = new int[S]; for (int i : arr) { int pos = -1; for(int j = 0; j 0; --j) c..

image