일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 |
31 |
- 그리디 알고리즘
- C++
- 파이썬
- 다이나믹 프로그래밍
- SWEA
- 구현
- 백준알고리즘
- BFS
- DFS
- javascript
- 백준 알고리즘
- 데이터베이스
- 다익스트라
- 스택
- 너비우선탐색
- SW Expert Academy
- 프로그래머스
- DP
- 그래프 탐색
- Python
- 브루트포스
- 너비 우선 탐색
- 자바스크립트
- 오라클
- 문자열
- 백트래킹
- oracle
- 브루트포스 알고리즘
- 이분 탐색
- 그래프 이론
- Today
- Total
목록분류 전체보기 (154)
민규의 흔적

2024년 4월 11일 문제 링크 : 백준 2579번 - 계단 오르기 2579번: 계단 오르기 계단 오르기 게임은 계단 아래 시작점부터 계단 꼭대기에 위치한 도착점까지 가는 게임이다. 과 같이 각각의 계단에는 일정한 점수가 쓰여 있는데 계단을 밟으면 그 계단에 쓰여 있는 점 www.acmicpc.net 문제 계단 오르기 게임은 계단 아래 시작점부터 계단 꼭대기에 위치한 도착점까지 가는 게임이다. 과 같이 각각의 계단에는 일정한 점수가 쓰여 있는데 계단을 밟으면 그 계단에 쓰여 있는 점수를 얻게 된다. 예를 들어 와 같이 시작점에서부터 첫 번째, 두 번째, 네 번째, 여섯 번째 계단을 밟아 도착점에 도달하면 총 점수는 10 + 20 + 25 + 20 = 75점이 된다. 계단 오르는 데는 다음과 같은 규칙이..

2024년 4월 2일 문제 링크 : 백준 1484번 - 다이어트 1484번: 다이어트 성원이는 다이어트를 시도중이다. 성원이는 정말 정말 무겁기 때문에, 저울이 부셔졌다. 성원이의 힘겨운 다이어트 시도를 보고만 있던 엔토피아는 성원이에게 새로운 저울을 선물해 주었다. www.acmicpc.net 문제 성원이는 다이어트를 시도중이다. 성원이는 정말 정말 무겁기 때문에, 저울이 부셔졌다. 성원이의 힘겨운 다이어트 시도를 보고만 있던 엔토피아는 성원이에게 새로운 저울을 선물해 주었다. 성원이는 엔토피아가 선물해준 저울 위에 올라갔다. “안돼!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! G 킬로그램이나 더 쪘어ㅜㅠ”라고 성원이가 말했다. 여기서 말하는 G킬로그램은 성원이의 ..

COMMIT과 ROLLBACK 트랜잭션의 완료 - COMMIT 연산 트랜잭션에서 변경하려는 내용이 데이터베이스에 완전하게 반영된다. 트랜잭션의 철회 - ROLLBACK 연산 트랜잭션에서 변경하려는 내용이 데이터베이스 일부만 반영된 경우, 원자성을 보장하기 위해서 트랜잭션이 갱신한 사항을 트랜잭션 수행되기 전의 상태로 되돌린다. 아래의 예시를 보자. 위 그림의 파란색 선 전체를 하나의 트랜잭션으로 보자. 위의 트랜잭션 연산은 정상적으로 수행되어, 끝내 COMMIT 연산을 통해 데이터베이스에 트랜잭션으로 변경된 내용이 그대로 반영되었다. 하지만, 아래의 트랜잭션 연산은 d1, u1, i1 연산을 수행한 이후, i2 연산을 수행하기 전에 고장이 나버려 수행하지 못하였다. 위와 같은 경우 ROLLBACK 연산을..

트랜잭션이란, 하나의 논리적인 단위를 수행하는 데이터베이스 연산자들의 모임이다. 40명의 학생 데이터 중, 하나를 삽입하는 것도 트랜잭션이며, 한 번에 삽입하는 것도 트랜잭션이다. DBMS는 트랜잭션 단위로 연산 중간에 하나라도 실패하면 전으로 돌릴 수 있다. 다음의 예시를 보자. 위 예시는 두 사람 간의 계좌이체 트랜잭션이다. 계좌이체 시 한 명은 돈을 보냈는데 다른 한 명은 돈을 받지 못하거나, 반대로 돈을 보내려다 취소했는데 다른 한 명이 돈을 받는 상황이 생기면 매우 곤란할 것이다. 한 명이 돈을 보내면 다른 한 명은 무조건 돈을 받아야 하고, 한 명이 돈을 보내지 않으면 다른 한 명은 무조건 돈을 받지 않는 상태만이 유효해야 한다. 즉, 위의 2개의 SQL문은 하나의 트랜잭션으로 취급하며, 모두..
시스템 카탈로그 데이터베이스의 객체(사용자, 릴레이션, 뷰, 인덱스, 권한 등)와 구조들에 관한 모든 데이터를 포함하는 것을 의미하며, 메타데이터(데이터에 관한 데이터의 의미)라고 한다. 사용자 및 질의 최적화 모듈 등 DBMS 자신의 구성 요소에 의해서 사용된다. 데이터 사전(Data dictionary) 또는 시스템 테이블 이라고도 부른다. 시스템 카탈로그 활용 - 질의 최적화 시스템 카탈로그의 사용 목적 중 하나로, DBMS가 질의를 수행하는 여러 가지 방법들 중에서 가장 비용이 적게 드는 방법을 찾는 과정을 질의 최적화라고 한다. 다음의 예시 질의를 보며 시스템 카탈로그가 어떻게 활용되는지 알아보자. SELECT EMPNAME, SALARY, SALARY*1.1 FROM EMPLOYEE WHERE..

뷰(VIEW) 뷰(VIEW)란, 간단히 말해 다른 릴레이션으로부터 유도된 릴레이션(Derived relation)이다. 같은 의미로 뷰는, 한 사용자의 전체 외부 뷰 대신에 하나의 가상 릴레이션(Virtual relation)을 의미한다. 기존의 기본 릴레이션(Base relation, 실제 릴레이션)에 대한 SELECT문 형태로 정의되며, 이는 뷰 = SELECT문 이라고 쉽게 이해할 수 있다. 뷰 정의 위에서 언급했듯, 뷰는 SELECT문 형태로 정의되며, 정의 방법은 다음과 같다. CREATE OR REPLACE VIEW 뷰 이름 [(애트리뷰트(들))] AS SELECT문 [WITH CHECH OPTION]; 뷰의 이름 다음에 애트리뷰트들을 생략하면, SELECT문의 SELECT절에 열거된 애트리뷰..

2023년 11월 21일 문제 링크 : 백준 2493번 - 탑 문제 KOI 통신연구소는 레이저를 이용한 새로운 비밀 통신 시스템 개발을 위한 실험을 하고 있다. 실험을 위하여 일직선 위에 N개의 높이가 서로 다른 탑을 수평 직선의 왼쪽부터 오른쪽 방향으로 차례로 세우고, 각 탑의 꼭대기에 레이저 송신기를 설치하였다. 모든 탑의 레이저 송신기는 레이저 신호를 지표면과 평행하게 수평 직선의 왼쪽 방향으로 발사하고, 탑의 기둥 모두에는 레이저 신호를 수신하는 장치가 설치되어 있다. 하나의 탑에서 발사된 레이저 신호는 가장 먼저 만나는 단 하나의 탑에서만 수신이 가능하다. 예를 들어 높이가 6, 9, 5, 7, 4인 다섯 개의 탑이 수평 직선에 일렬로 서 있고, 모든 탑에서는 주어진 탑 순서의 반대 방향(왼쪽 ..
물리적 데이터베이스 설계는 끊임없이 이루어지는 작업으로, 성능을 향상시키기 위한 고민을 지속적으로 해야 한다. 인덱스 선정 지침 1. 어떤 릴레이션에 인덱스를 생성해야 하는가 2. 어떤 애트리뷰트를 탐색 키로 선정해야 하는가 3. 몇 개의 인덱스를 생성해야 하는가 4. 각 인덱스에 대해 클러스터링 인덱스, 밀집/희소 인덱스 중 어느 유형을 선택할 것인가 인덱스를 선정하는 한 가지 방법은 가장 중요한 질의들을 차례로 고려해보고, 현재의 인덱스가 최적의 계획에 적합한지 고려해보고, 인덱스를 추가하면 더 좋은 계획이 가능한지 알아보는 것이다. 인덱스를 결정하는데 도움이 되는 몇 가지 지침 지침 1 : 기본 키는 클러스터링 인덱스를 정의할 훌륭한 후보이다. 지침 2 : 외래 키도 인덱스를 정의할 중요한 후보이다..