일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Doitvue.js입문
- OS
- web
- dp
- javascript
- Level3
- LeetCode
- python
- VUE
- typescript
- Level1
- 카카오
- C++
- 리트코드
- sql
- 리액트
- 파이썬
- 동적계획법
- react
- Medium
- 고득점Kit
- 배열
- 자바스크립트
- Level2
- 백준
- 프로그래머스
- 코테연습
- 웹프로그래밍
- 프로그래밍
- CS
- Today
- Total
목록분류 전체보기 (364)
DDL (Data Define Language) : 데이터 정의어 DDL은 스키마, 도메인, 테이블, 뷰, 인덱스를 정의하거나 변경 또는 삭제할 때 사용하는 언어이다. CREATE ALTER DROP DML(Data Manipulationo Language): 데이터 조작어 DML은 사용자가 응용 프로그램이나 질의어를 통하여 저장된 데이터를 실질적으로 처리하는 데 사용되는 언어이다. SELECT INSERT DELETE DCL(Data Control Language): 데이터 제어어 DCL은 데이터의 보안, 무결성, 회복, 병행 수행 제어 등을 정의하는 데 사용되는 언어이다. COMMIT ROLLBACK GRANT REVOKE
인덱스 인덱스란? 데이터 레코드를 빠르게 접근하기 위해 쌍으로 구성되는 데이터 구조이다. DBMS의 인덱스는 항상 정렬된 상태를 유지하기 때문에 원하는 값을 탐색하는데는 빠르지만 새로운 값을 추가하거나 삭제, 수정하는 경우에는 쿼리문 실행 속도가 느려진다. DBMS에서 인덱스는 데이터의 저장 성능을 희생하고 그 대신 데이터의 읽기 속도를 높인다 데이터가 저장된 물리적 구조와 밀접한 관계가 있다. 레코드가 저장된 물리적 구조에 접근하는 방법을 제공한다. 레코드의 삽입과 삭제가 수시로 일어나는 경우에는 인덱스의 개수를 최소로 하는 것이 효율적이다. 인덱스가 없으면 특정한 값을 찾기 위해 모든 데이터 페이지를 확이하는 TABLE SCAN이 발생한다. DDL을 이용해 사용자가 생성, 변경, 제거할 수 있다. 기..
트랜잭션 트랜잭션이란? 데이터베이스의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위 또는 한꺼번에 모두 수행되어야할 일련의 연산들을 의미한다. 논리적인 작업 셋을 모두 완벽하게 처리하거나 또는 처리하지 못할 경우에는 원 상태로 복구해서 작업의 일부만 적용되는 현상이 발생하지 않게 만들어주는 기능으로 작업의 완전성을 보장해준다. 작업의 논리적 단위 또는 데이터들을 접근 또는 변경하는 프로그램의 단위가 된다. 트랜잭션과 Lock 잠금은 동시성을 제어하기 위한 기능이고 트랜잭션은 정합성을 보장하기 위한 기능이다. 잠금은 여러 커넥션에서 동시에 동일한 자원을 요청할 경우 순서대로 한 시점에는 하나의 커넥션만 변경할 수 있게 해주는 역할을 한다. 특성 ACID Atomicity 원자성 트랜잭션..
구명보트 문제 설명 무인도에 갇힌 사람들을 구명보트를 이용하여 구출하려고 합니다. 구명보트는 작아서 한 번에 최대 2명씩 밖에 탈 수 없고, 무게 제한도 있습니다. 구명보트를 최대한 적게 사용하여 모든 사람을 구출하려고 합니다. 사람들의 몸무게를 담은 배열 people과 구명보트의 무게 제한 limit가 매개변수로 주어질 때, 모든 사람을 구출하기 위해 필요한 구명보트 개수의 최솟값을 return 하도록 solution 함수를 작성해주세요. 제한사항 무인도에 갇힌 사람은 1명 이상 50,000명 이하입니다. 각 사람의 몸무게는 40kg 이상 240kg 이하입니다. 구명보트의 무게 제한은 40kg 이상 240kg 이하입니다. 구명보트의 무게 제한은 항상 사람들의 몸무게 중 최댓값보다 크게 주어지므로 사람들..
징검다리 문제 설명 출발지점부터 distance만큼 떨어진 곳에 도착지점이 있습니다. 그리고 그사이에는 바위들이 놓여있습니다. 바위 중 몇 개를 제거하려고 합니다. 예를 들어, 도착지점이 25만큼 떨어져 있고, 바위가 [2, 14, 11, 21, 17] 지점에 놓여있을 때 바위 2개를 제거하면 출발지점, 도착지점, 바위 간의 거리가 아래와 같습니다. 제거한 바위의 위치각 바위 사이의 거리거리의 최솟값 [21, 17] [2, 9, 3, 11] 2 [2, 21] [11, 3, 3, 8] 3 [2, 11] [14, 3, 4, 4] 3 [11, 21] [2, 12, 3, 8] 2 [2, 14] [11, 6, 4, 4] 4 위에서 구한 거리의 최솟값 중에 가장 큰 값은 4입니다. 출발지점부터 도착지점까지의 거리 ..
입국심사 문제 설명 입국심사를 기다리는 사람 수 n, 각 심사관이 한 명을 심사하는데 걸리는 시간이 담긴 배열 times가 매개변수로 주어질 때, 모든 사람이 심사를 받는데 걸리는 시간의 최솟값을 return 하도록 solution 함수를 작성해주세요. 제한사항 입국심사를 기다리는 사람은 1명 이상 1,000,000,000명 이하입니다. 각 심사관이 한 명을 심사하는데 걸리는 시간은 1분 이상 1,000,000,000분 이하입니다. 심사관은 1명 이상 100,000명 이하입니다.. 풀이 제한 사항을 보고 이진탐색 문제임을 알 수 있었지만 어디를 이진 탐색해야할지 아이디어가 떠오르지 않았다. 그러다 질문 게시판에서 힌트를 얻었다. 문제의 목표는 심사 받는데 걸리는 시간의 최솟값이다. 그러므로 총 걸리는 시..
방의 개수 문제 설명 원점(0,0)에서 시작해서 아래처럼 숫자가 적힌 방향으로 이동하며 선을 긋습니다. ex) 1일때는 오른쪽 위로 이동 그림을 그릴 때, 사방이 막히면 방하나로 샙니다. 이동하는 방향이 담긴 배열 arrows가 매개변수로 주어질 때, 방의 갯수를 return 하도록 solution 함수를 작성하세요. 제한사항 배열 arrows의 크기는 1 이상 100,000 이하 입니다. arrows의 원소는 0 이상 7 이하 입니다. 방은 다른 방으로 둘러 싸여질 수 있습니다. 풀이 처음에는 단순히 방문한 노드를 다시 방문했을 때 방이 만들어지지 않을까 했다. 근데 똑같은 경로를 왕복으로 움직였을 경우엔 방이 만들어지지 않으므로 테스트케이스에서 다 틀렸다. 그리고 빠르게 다른 사람풀이를 봤다 ㅎㅎㅋㅋ..
순위 문제 설명 선수의 수 n, 경기 결과를 담은 2차원 배열 results가 매개변수로 주어질 때 정확하게 순위를 매길 수 있는 선수의 수를 return 하도록 solution 함수를 작성해주세요. 제한사항 선수의 수는 1명 이상 100명 이하입니다. 경기 결과는 1개 이상 4,500개 이하입니다. results 배열 각 행 [A, B]는 A 선수가 B 선수를 이겼다는 의미입니다. 모든 경기 결과에는 모순이 없습니다. 풀이 문제의 의도는 플로이드 워셜 알고리즘을 사용하는 것이다. 경기 결과를 진 선수가 이긴 선수를 가리키는 방향 그래프로 나타낼 수 있기 때문에 최단 거리 알고리즘을 수행할 수 있게 된다. A와 B의 경기 결과를 확인할 때, A에서 B로 도달 가능하거나 B에서 A로 도달 가능하면 결과를 ..