본문 바로가기

Computer Science51

[데이터베이스] 이상 (Anomaly) 이상 (Anomaly) 데이터베이스 내의 데이터들의 불필요한 중복으로 인해 발생하는 예기치 못하는 상황 1. 삽입 이상 (Insertion Anomaly) 데이터 삽입 시 원하지 않는 값도 같이 삽입되는 상황 ex) 학생 번호를 입력하기 위해선 수강신청 과목 번호도 같이 입력해야됨. → 불필요한 데이터 2. 삭제 이상 (Deletion Anomaly) 튜플 삭제 시 의도하지 않은 값들도 같이 삭제되는 상황 ex) 수강신청만 취소하려고 하는데 학생의 정보도 같이 삭제됨 3. 갱신 이상 (Update Anomaly) 튜플의 속성 값 갱신 시 일부 테이블의 튜플 정보만 갱신되는 상황 → 데이터의 모순이 발생 ex) 학생의 전공이 바뀌었는데 일부 테이블에서만 바뀌고 나머지 테이블들에서는 전공이 바뀌지 않아서 데.. 2020. 9. 17.
[데이터베이스] 트랜잭션 (Transaction) 트랜잭션 (Transaction) 데이터베이스에서 하나의 논리적 기능을 수행하기 위한 기본 작업 단위 예를 들어, 통장에서 금액을 출금하는 작업을 한다고 치면 '통장 금액 불러오기 (SELECT)' → '출금 (UPDATE)' 와 같은 순서로 이루어지는데 이 2가지 과정이 하나의 트랜잭션이다. 트랜잭션의 특성 (ACID) 특성 설명 원자성 (Atomicity) 트랜잭션 내의 모든 작업이 성공적으로 수행되어 반영되거나 혹은 모두 반영되지 않아야한다. (일부만 반영x) 일관성 (Consistency) 트랜잭션이 성공적으로 실행된 후에도 데이터베이스는 항상 일관성을 유지해야한다. 독립성 (Isolation) 어느 트랜잭션이 실행 중일 때, 다른 트랜잭션이 연산에 끼어들 수 없다. 지속성 (Durability).. 2020. 9. 17.
[자료구조] 신장 트리, 최소 비용 신장 트리 신장 트리 (Spanning Tree) 신장(Spanning) : 모든 노드를 포함한다는 의미 트리의 일종이기 때문에 cycle이 없어야 한다. 기존 그래프가 가진 모든 노드를 순환 없이 서로 연결시킨 트리 트리 간선 : 신장 트리에 포함된 간선 비트리 간선: 신장 트리에 포함되지 않은 간선 ​ 최소 비용 신장 트리 (Minimum Cost Spanning Tree) 무향 가중 그래프의 신장 트리 중에서 가중치의 합이 최소인 신장 트리 최소 신장 트리 구하는 알고리즘 : Prim(프림), Kruskal(크루스칼) 1197번: 최소 스패닝 트리 첫째 줄에 정점의 개수 V(1 ≤ V ≤ 10,000)와 간선의 개수 E(1 ≤ E ≤ 100,000)가 주어진다. 다음 E개의 줄에는 각 간선에 대한 정보를 나타.. 2020. 9. 15.
[자료구조] 그래프 (Graph) 그래프 (Graph) 노드(Node, Vertex), 간선 (Edge)의 집합 객체 사이의 연결 관계를 표현하는 자료구조 가장 표현력이 우수한 자료구조로, 현실세계의 다양한 문제를 효과적으로 모델링하는 목적 트리는 계층구조가 아닌 일반적인 관계는 나타낼 수 없다는 한계를 지님 ​ 그래프 종류 구분 종류 설명 간선의 방향성 무방향 그래프 방향X 방향 그래프 방향O 간선의 가중치 가중 그래프 간선에 가중치 할당 구조적 특징 완전 그래프 연결 가능한 최대 간선 수 가짐 부분 그래프 원래 그래프의 일부분 다중 그래프 중복된 간선 포함 ​ 1. 무방향 그래프 간선에 방향이 없는 그래프 노드 : V(A) = { A, B, C, D, E} 간선 : G(A) = {(A,B), (B, D), (C,D), (D,E), (.. 2020. 9. 15.