나를 기록하다
article thumbnail
[TIL-52/240328] 프림(Prim) 알고리즘
TIL 2024. 3. 29. 00:10

프림 알고리즘 프림 알고리즘이란? 하나의 정점에서 연결된 간선들 중에 하나씩 선택하면서 MST를 만들어 가는 방식 임의의 정점을 선택하여 시작 어짜피 모두 연결되므로 임의의 정점을 선택해도 된다 그러므로 첫 정점(0번 또는 1번)을 고른다 선택한 정점과 인접하는 정점들 중의 최소 비용의 간선이 존재하는 정점을 선택 모든 정점이 선택될 때까지 2번 과정을 반복 서로소인 2개의 집합 정보를 유지 트리 정점: MST를 만들기 위해 선택된 정점들 비트리 정점들: 선택되지 않은 정점들 프림 알고리즘 의사코드 MST-PRIM(G, r) FOR u in G.V u.key ← ∞ u.p ← NULL r.key ← 0 Q ← G.V WHILE Q != 0 Q ← Extract-MIN(Q) FOR v in G.Adj[u]..

article thumbnail
[TIL-51/240327] 그래프 비용(서로소 집합, MST, 크루스칼)
TIL 2024. 3. 28. 08:44

서로소 집합(Disjoint-sets) 상호 배타 집합 중복 포함된 원소가 없는 집합 → 교집합이 없음 각 집합은 대표자를 통해 구분 상호 배타 집합 표현 방법 연결 리스트 트리 연결리스트 배열 상호 배타 집합 연산 Make-Set(x) : 단위집합을 만드는 연산 (초기화 함수) Find-Set(x) : 어떤 한 element가 주어졌을 때, 그 element의 대표자를 구하는 연산 Union(x, y) : 두 구성요소가 주어지고, 그 두 구성요소의 각 상호배타 집합을 합치는 연산 Make-Set / Union / Find-Set 연산 상호 배타 집합 표현 - 연결리스트 같은 집합의 원소들은 하나의 연결리스트로 관리 연결리스트의 맨 앞의 원소를 집합의 대표자로 결정 각 원소는 집합의 대표원소를 가리키는 ..

article thumbnail
[TIL-50/240322] JDBC
TIL 2024. 3. 23. 00:40

JDBC JDBC란? Java Database Connectivity, 자바 프로그래밍 언어를 사용해 데이터베이스에 접근할 수 있도록 하는 자바 API JDBC를 이용하여 DB에 접속, SQL 실행, 데이터를 가져오거나 삭제하는 등 데이터를 다룰 수 있음 JDBC가 등장하게 된 배경 DB 접근의 표준화를 위해서 등장 JDBC 등장 이전 DB마다 존재하는 고유한 API를 직접 사용 이에 따라 개발자는 기존의 DB를 다른 DB로 교체해야하는 경우 DB에 맞게 기존의 코드도 모두 수정해야 했으며 심지어 각각의 DB를 사용하는 방법도 새로 학습해야 했음 → JDBC의 표준 인터페이스 덕분에 개발자는 DB를 쉽게 변경할 수 있게 되었고 변경에 유연하게 대처할 수 있게 됨 JDBC를 알아야 하는 이유 JDBC는 매..

article thumbnail
[TIL-49/240321] Join & SubQuery & Modeling
TIL 2024. 3. 22. 00:10

조인(Join) 두 개 이상의 테이블에서 행을 결합하는 방법 일반적으로 조인조건은 PK(Primary Key) 및 FK(Foregin Key)로 구성 PK 및 FK 관계가 없더라도 논리적인 연관만 있으면 JOIN 가능 내부 조인 (INNER JOIN) 두 테이블의 교집합을 반환. 조인 조건을 충족하는 행만 반환 동등 조인(Equi-join)이라고도 함 N개의 테이블 조인 시 N-1개의 조인 조건 필요 외부 조인 (OUTER JOIN): 하나의 테이블에는 존재하지만 다른 테이블에는 존재하지 않는 행도 포함하여 결과를 반환 LEFT OUTER JOIN: 첫 번째 (왼쪽) 테이블의 모든 행과 일치하는 오른쪽 테이블의 행을 반환 RIGHT OUTER JOIN: 두 번째 (오른쪽) 테이블의 모든 행과 일치하는 왼..

article thumbnail
[TIL-48/240320] DDL & DML
TIL 2024. 3. 21. 08:49

Data Type(자료형) 숫자 자료형(Numeric Data Types) 문자 자료형(String Data Types) CHAR vs VARCHAR CHAR(10) : 10자리만큼 저장이 가능하고 비어있는 자리는 못 쓰는 공간 VARCHAR(10) : 10자리만큼 저장이 가능하고 비어있는 자리는 반환 날짜 자료형(Date and Time Data Types) Binary 및 VARBINARY형 BINARY 및 VARBINARY 타입은 CHAR 및 VARCHAR 형과 유사하지만, 비 바이너리 문자열이 아닌 바이너리 문자열을 저장 즉, 문자열이 아닌 바이트의 문자열이 포함되어 있음 → 이것은 그들에게 문자 세트가 없고, 정렬 및 비교는 값 안의 바이트의 수치에 따라 의미 CHAR 및 VARCHAR 공통점 ..

article thumbnail
[TIL-47/240319] MySQL, SELECT
TIL 2024. 3. 20. 00:10

데이터베이스(Database) 데이터베이스란? 여러 사람이 공유하고 사용할 목적으로 통합 관리되는 정보의 집합 논리적으로 연관된 하나 이상의 자료의 모음 데이터들을 고도로 구조화 함으로써 검색과 갱신의 효율화를 꾀한 것 몇 개의 자료 파일을 조직적으로 통합하여 중복을 없애고 자료를 구조화 시킨 자료의 집합체 DB란 무엇일까 통합된 데이터(Integrated Data) 각자 사용하던 데이터를 모아서 중복을 최소화하고 데이터 불일치를 제거 저장된 데이터(Stored Data) 문서 형태로 보관되는 것이 아니라 저장장치(디스크, 테이프 등 컴퓨터 저장장치)에 저장됨 운영 데이터(Operational Data) 조직의 목적을 위해서 사용되는 데이터를 의미 공용 데이터(Shared Data) 여러 사람이 각각 다..

profile on loading

Loading...