일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 백트래킹
- FetchType
- 다대다
- 동적sql
- SQL프로그래밍
- 이진탐색
- 연관관계
- BOJ
- 연결리스트
- 스토어드 프로시저
- PS
- 힙
- fetch
- 비관적락
- shared lock
- 스프링 폼
- eager
- 일대다
- 낙관적락
- 다대일
- CHECK OPTION
- exclusive lock
- 유니크제약조건
- 지연로딩
- querydsl
- dfs
- 데코레이터
- 즉시로딩
- execute
- JPQL
- Today
- Total
목록All (557)
흰 스타렉스에서 내가 내리지
보호되어 있는 글입니다.
import threading import time import queue def kane(): print('Harry') time.sleep(2) print('Kane') def sane(): print('Leroy') time.sleep(1) print('Sane') thread = [] thread.append(threading.Thread(target=kane, name="kane")) thread.append(threading.Thread(target=sane, name="sane")) for th in thread: th.start() import threading import time import queue q = queue.Queue() def worker(): while True: ite..
탐욕 알고리즘 (Greedy Algorithm) 매 단계마다 항상 최선일 것 같은 선택을 하면 전체적으로도 최선의 선택을 하게 된다는 알고리즘이다. 탐욕 알고리즘의 두 가지 조건 최적 부분 구조 (optimal substructure) : 어떤 전체 문제에 대한 최적해는 부분 문제(subproblem)에 대한 최적해를 포함하고 있습니다. 탐욕 선택 특성 (greedy choice property) : 부분적으로 최적의 선택을 계속하면 전역적으로 최적해에 도달할 수 있다.
https://www.acmicpc.net/problem/1806 1806번: 부분합 첫째 줄에 N (10 ≤ N < 100,000)과 S (0 < S ≤ 100,000,000)가 주어진다. 둘째 줄에는 수열이 주어진다. 수열의 각 원소는 공백으로 구분되어져 있으며, 10,000이하의 자연수이다. www.acmicpc.net N, S = map(int, input().split()) data = list(map(int, input().split())) end = 0 interval_sum = 0 answer = 1e9 for start in range(N): while interval_sum < S and end < N: interval_sum += data[end] end += 1 if interval..
힙(heap)은 내부 표현이 동적 배열이며 완전 이진 트리이다. 힙에는 최대 힙(max heap)과 최소 힙(min heap)이 있다. 최대 힙 (max heap) : 부모노드의 키값이 자식노드의 키값보다 항상 큰 힙 최소 힙 (min heap) : 부모노드의 키값이 자식노드의 키값보다 항상 작은 힙 힙 트리 힙 트리의 특징 index(left_child) = index(parent) * 2 index(left_child) = index(parent) * 2 + 1 Max Heap 소스코드 class Element: def __init__(self, key): self.key = key class MaxHeap: # 이 곳에서는 힙의 크기를 최대 100으로 제한하고 있지만, # 실제 구현에서는 힙이 가득..
보호되어 있는 글입니다.
에라토스테네스가 발견한 소수를 찾는 방법이다. 알고리즘 2부터 소수를 구하고자 하는 구간의 모든 수를 나열한다. 그림에서 회색 사각형으로 두른 수들이 여기에 해당한다. 2는 소수이므로 오른쪽에 2를 쓴다. 자기 자신을 제외한 2의 배수를 모두 지운다. 남아있는 수 가운데 3은 소수이므로 오른쪽에 3을 쓴다. 자기 자신을 제외한 3의 배수를 모두 지운다. 남아있는 수 가운데 5는 소수이므로 오른쪽에 5를 쓴다. 자기 자신을 제외한 5의 배수를 모두 지운다. 남아있는 수 가운데 7은 소수이므로 오른쪽에 7을 쓴다. 자기 자신을 제외한 7의 배수를 모두 지운다. 위의 과정을 반복하면 구하는 구간의 모든 소수가 남는다. import math n = 1000 arr = [True for i in range(n+1..
https://www.acmicpc.net/problem/24040 24040번: 예쁜 케이크 Good Bye BOJ, 2021!이 열리는 오늘, 12월 31일은 종서의 생일이다. $N$ 명의 친구들은 종서에게 생일 선물로 예쁜 케이크를 만들어주려 한다. 여기에서, 예쁜 케이크는 다음과 같은 조건을 만족하는 www.acmicpc.net for _ in range(int(input())): n = int(input()) if (n-2)%3 == 0 or n%9==0: print('TAK') else: print('NIE') N의 범위가 저 정도면 O(1)의 알고리즘으로 풀어야 하며, 즉 정수론적으로 접근해야 함을 바로 파악해야 한다. 감이 안잡힐땐, 무작정 1부터 다 해보자. 패턴이 보일 것이다. 너무 깊..
탐색 (Search) 란 많은 양의 데이터 중에서 원하는 데이터를 찾는 과정이다. 자료구조 (Data Structure) 란 데이터를 표현하고 관리하고 처리하기 위한 구조이다. 그 중 스택과 큐는 자료구조의 기초개념이고, 다음의 두 핵심적인 함수로 구성된다. Push - 데이터 삽입 Pop - 데이터 삭제