이직준비14 [코딩테스트] 가장 많이 받은 선물 (feat. kotlin) https://school.programmers.co.kr/learn/courses/30/lessons/258712 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 파악문제에서 친구목록[friends]이 주어지지고 각 친구끼리 선물을 주고 받은 내용이 선물목록[gifts] 로 주어진다.선물목록[gifts]는 "A B"형태의 문자열이다. A는 선물을 준 친구의 이름을 B는 선물을 받은 친구의 이름을 의미하며 공백 하나로 구분된다. 주어진 친구목록과 선물목록을 기준으로 선물을 더준 친구에게 선물을 주어야 한다.만약 두 사람이 선물을 주고받은적이 없거나 주고받은 수가 같은경우에는 선물지수 를 계산하여 해.. 2024. 12. 18. [JPA] 영속성 컨텍스트에 따른 엔티티 조회. JPA 에서 Entity를 관리하는 영속성 컨텍스트는 정말 중요한 개념이다. 이번 이직을 준비하면서 기술면접으로 물어본 질문중 "@Transactional 이 있는 서비스를 한단계 위 서비스에서 다른 트랜잭션으로 묶었을때 해당 객체에 연관된 객체를 불러오게 되면 어떻게 되는가?" 대충 이런식의 질문 이었다. [퍼사드패턴]으로 상위 트랜잭션에서 하위 서비스에 새로운 트랜잭션으로 엔티티를 불러오고 해당 서비스에서 이미 트랜잭션이 종료되고 해당 엔티티는 비영속 상태가 되어 더이상 엔티티로 관리되지 않고 그 상태에서 해당 엔티티와 연관관계가 있는 객체를 불러오면 해당 연관 객체를 가져올수 없다고 대답은 했지만.. 실제로 어떻게 동작하는지 확인하기 위해 직접 코드를 작성해 보았다. 구성 아주 간단한 구성으로 회원.. 2022. 5. 17. [Algorithm] 프로그래머스 - 디스크 컨트롤러 https://programmers.co.kr/learn/courses/30/lessons/42627 코딩테스트 연습 - 디스크 컨트롤러 하드디스크는 한 번에 하나의 작업만 수행할 수 있습니다. 디스크 컨트롤러를 구현하는 방법은 여러 가지가 있습니다. 가장 일반적인 방법은 요청이 들어온 순서대로 처리하는 것입니다. 예를 programmers.co.kr 힙큐를 이용한 풀이법. 변수 설명 jobs 배열 -> { 들어온 시간, 처리되는 시간 } 풀이법 하나의 처리가 종료되어야 다음 처리가 가능하기 때문에 큐를 이용해 들어온 처리들을 큐에 넣고 하나씩 꺼내면서 처리를 수행한다. 큐에서 꺼내어 처리 할 때마다 종료시간을 계산한다. 큐에 넣는 조건 현재 처리중인 노드의 종료시간을 계산. 종료시간보다 같거나 작은 시.. 2022. 3. 21. [Algorithm] 프로그래머스 - 네트워크 https://programmers.co.kr/learn/courses/30/lessons/43162 코딩테스트 연습 - 네트워크 네트워크란 컴퓨터 상호 간에 정보를 교환할 수 있도록 연결된 형태를 의미합니다. 예를 들어, 컴퓨터 A와 컴퓨터 B가 직접적으로 연결되어있고, 컴퓨터 B와 컴퓨터 C가 직접적으로 연결되어 있 programmers.co.kr 위 문제는 양방향 그래프를 형성하고 전체 그래프를 순회하면서 몇개의 그룹이 존재하는지 판단하는 문제이다. 먼저 입력에 대한 그래프를 생성한다. 그래프를 작성하는 코드는 다음과 같다. (배열을 이용함) 배열의 의미 ( graph[ i ][ j ] = i번째 노드와 j번째 노드가 연결 되어있으면 1, 아니면 0 ) int[][] graph; public int.. 2022. 3. 21. [Algorithm] KAKAO - [1차] 추석 트래픽 https://programmers.co.kr/learn/courses/30/lessons/17676 2022. 3. 8. 이전 1 2 3 다음 반응형