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

파일 시스템 데이터를 파일로 관리하기 위해 파일 생성/삭제/수정/검색 기능을 제공하는 소프트웨어이다. 파일 시스템은 DBMS가 등장하지 않았을 때인 1960년대부터 사용되어 왔다. 응용프로그램별로 필요한 데이터를 별도의 파일로 관리하였다. 파일 시스템의 문제점 파일 시스템의 문제점은 다음과 같다. 1. 같은 내용의 데이터가 여러 파일에 중복 저장된다. 다음과 같이 고객 데이터 파일과 주문 데이터 파일을 관리하는 각각의 응용 프로그램이 있다고 가정해보겠다. 고객 데이터와 주문 데이터를 저장하다보니 위와 같이 중복되는 부분이 존재할 수 있다. 이는 저장 공간의 낭비와 데이터 일관성을 유지하기 어렵다는 점을 지닌다. 데이터 일관성을 지키기 어려운 데이터 불일치 사례를 다음의 예로 이해해보자. 각각의 데이터 파..

데이터베이스 스키마(Schema) 데이터베이스에 저장되는 데이터 구조와 제약조건을 정의. 내포(instance) 라고도 부른다. 데이터베이스의 구조를 알려주는 역할이며 자주 변경되지 않는다. 다음의 데이터베이스 스키마 예를 보자. DEPARTMENT(DEPTNO, DEPTNAME, FLOOR) EMPLOYEE(EMPNO, EMPNAME, TITLE, DNO, SALARY) 부서 정보를 지니는 DEPARTMENT 릴레이션에 대한 구조를 정의하고 있다. DEPARTMENT 릴레이션에는 부서 번호를 뜻하는 DEPTNO, 부서 이름을 뜻하는 DEPTNAME 그리고 부서가 위치하는 층 수를 뜻하는 FLOOR로 구조가 정의되어 있음을 뜻한다. 마찬가지로, 직원 정보를 지니는 EMPLOYEE 릴레이션에 대한 구조 또..
정보 VS 데이터 데이터베이스 시스템을 알아보기 전, 정보와 데이터의 차이를 알 필요가 있다. 어떤 값을 다루느냐에 따라 정의하는 바가 다르기 때문이다. 데이터 현실 세게에서 단순히 관찰하거나 측정하여 수집한 사실이나 실제 값 정보 의사 결정에 유용하게 활용할 수 있도록 데이터를 처리한 의미있는 결과물 이 둘의 차이를 예로 들어 설명해보자면, 다음과 같다. 김철수의 1학기 기말고사 성적이 다음과 같이 나왔다. 국어 영어 수학 역사 과학 80 75 85 100 70 실제 김철수가 치른 기말고사 성적 값 그대로이며 이는 정말 순수한 값 그 자체이다. 시험을 체점하여 수집한 사실이나 실제 값, 바로 데이터이다. 각 반에서 학생들의 기말고사 결과를 이용해 등수를 메길 때, 어떤 값을 기준으로 두는가? 여러 기준..
데이터베이스 (Database) 특정 조직의 여러 사용자가 공유하여 사용할 수 있도록 연관된 운영 데이터(Operational data)들이 구조적으로 통합 저장된 데이터 데이터베이스의 구조는 사용되는 데이터 모델에 의해 결정된다. 실생활에서 데이터베이스는 어디에서 쓰이는가? 사실 실생활 어디에서든 데이터베이스가 사용 및 운용되고 있다. 대학 대학교에서는 데이터베이스에 학생들에 관한 신상 정보, 수강 과목, 성적 등을 기록하고, 각 학과에 개설되어 있는 과목들에 관한 정보를 유지하고, 교수에 관해서는 신상 정보, 담당 과목, 급여 정보를 유지한다. 영화관 영화 예매 시스템에서는 영화 예매 기능을 통해 티켓을 예매하면 예매한 사람의 신상 정보 및 모든 예매 정보가 데이터베이스에 기록된다. 이처럼, 실생활에..

2023년 9월 27일 문제 링크 : 백준 17298번 - 오큰수 문제 크기가 N인 수열 A = A1, A2, ..., AN이 있다. 수열의 각 원소 Ai에 대해서 오큰수 NGE(i)를 구하려고 한다. Ai의 오큰수는 오른쪽에 있으면서 Ai보다 큰 수 중에서 가장 왼쪽에 있는 수를 의미한다. 그러한 수가 없는 경우에 오큰수는 -1이다. 예를 들어, A = [3, 5, 2, 7]인 경우 NGE(1) = 5, NGE(2) = 7, NGE(3) = 7, NGE(4) = -1이다. A = [9, 5, 4, 8]인 경우에는 NGE(1) = -1, NGE(2) = 8, NGE(3) = 8, NGE(4) = -1이다. 입력 첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에 수열..
2023년 9월 26일 문제 링크 : 2178번 - 미로 탐색 문제 N×M크기의 배열로 표현되는 미로가 있다. 1 0 1 1 1 1 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 0 1 1 미로에서 1은 이동할 수 있는 칸을 나타내고, 0은 이동할 수 없는 칸을 나타낸다. 이러한 미로가 주어졌을 때, (1, 1)에서 출발하여 (N, M)의 위치로 이동할 때 지나야 하는 최소의 칸 수를 구하는 프로그램을 작성하시오. 한 칸에서 다른 칸으로 이동할 때, 서로 인접한 칸으로만 이동할 수 있다. 위의 예에서는 15칸을 지나야 (N, M)의 위치로 이동할 수 있다. 칸을 셀 때에는 시작 위치와 도착 위치도 포함한다. 입력 첫째 줄에 두 정수 N, M(2 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄..

2023년 9월 22일 문제 링크 : 백준 7576번 - 토마토 문제 철수의 토마토 농장에서는 토마토를 보관하는 큰 창고를 가지고 있다. 토마토는 아래의 그림과 같이 격자 모양 상자의 칸에 하나씩 넣어서 창고에 보관한다. 창고에 보관되는 토마토들 중에는 잘 익은 것도 있지만, 아직 익지 않은 토마토들도 있을 수 있다. 보관 후 하루가 지나면, 익은 토마토들의 인접한 곳에 있는 익지 않은 토마토들은 익은 토마토의 영향을 받아 익게 된다. 하나의 토마토의 인접한 곳은 왼쪽, 오른쪽, 앞, 뒤 네 방향에 있는 토마토를 의미한다. 대각선 방향에 있는 토마토들에게는 영향을 주지 못하며, 토마토가 혼자 저절로 익는 경우는 없다고 가정한다. 철수는 창고에 보관된 토마토들이 며칠이 지나면 다 익게 되는지, 그 최소 일..

2023년 9월 19일 그래프 탐색 (해당 포스팅은 무향 그래프를 인접 리스트 형태로 다루며 설명을 진행합니다.) 그래프 탐색은 연결되어 있는 그래프의 모든 정점을 지나며 탐색하는 것을 의미한다. ( 그래프 순회라고도 말한다. ) 그래프를 탐색하는 방법으로는 깊이 우선 탐색인 DFS, 너비 우선 탐색인 BFS가 사용된다. DFS ( Depth First Search ) DFS는 출발점에서 시작해, 막다른 지점에 도착할 때까지 최대한 깊게 탐색한다. 만약 탐색을 진행하다 막다른 지점에 도착하면 다시 이전 정점으로 돌아가 다른 길이 있는지 확인하고, 있다면 해당 경로를 최대한 깊게 탐색하다 또 다시 막다른 지점에 도착하면 다시 이전 정점로 돌아가는 과정을 밟는다. 이와 같은 과정을 통해 그래프를 탐색하는 방..