Skip to content

Commit

Permalink
Add Korean translation. (trekhleb#644)
Browse files Browse the repository at this point in the history
* Translate the Heap README to Korean.

* Translate Priority Queue's README to Korean

* Translate Kruskal Algorithm's README into Korean.

* fix typo

* Translate the Dijkstra README to Korean.

Co-authored-by: cckn <[email protected]>
Co-authored-by: Oleksii Trekhleb <[email protected]>
  • Loading branch information
3 people authored Jan 27, 2022
1 parent 6778625 commit 3fa1967
Show file tree
Hide file tree
Showing 7 changed files with 75 additions and 5 deletions.
16 changes: 16 additions & 0 deletions src/algorithms/graph/dijkstra/README.ko-KR.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# 다익스트라 알고리즘(Dijkstra's algorithm)

다익스트라 알고리즘은 도로 네트워크 등을 나타낼 수 있는 그래프에서 노드 간의 최단 경로를 찾는 알고리즘입니다.

이 알고리즘은 다양한 형태로 존재합니다. 다익스트라의 원래 형태는 두 노드 간의 최단 경로를 찾았지만, 더 일반적인 형태는 단일 노드를 "소스"노드로 수정하고 그래프의 소스에서 다른 모든 노드까지의 최단 경로를 찾아 최단 경로 트리(shortest-path tree)를 생성합니다.

![Dijkstra](https://upload.wikimedia.org/wikipedia/commons/5/57/Dijkstra_Animation.gif)

`a``b` 사이의 최단 경로를 찾는 다익스트라 알고리즘입니다.
가장 낮은 거리를 가지며 방문하지 않은 정점(vertex)를 선택하고, 이를 통해 방문하지 않은 각 이웃까지의 거리를 계산하며, 더 작은 경우 이웃의 거리를 업데이트합니다. 이웃에 대한 작업을 마치면 방문한 것으로 표시(빨간색으로 변경)합니다.

## 참조

- [Wikipedia](https://en.wikipedia.org/wiki/Dijkstra%27s_algorithm)
- [On YouTube by Nathaniel Fan](https://www.youtube.com/watch?v=gdmfOwyQlcI&list=PLLXdhg_r2hKA7DPDsunoDZ-Z769jWn4R8)
- [On YouTube by Tushar Roy](https://www.youtube.com/watch?v=lAXZGERcDf4&list=PLLXdhg_r2hKA7DPDsunoDZ-Z769jWn4R8)
3 changes: 3 additions & 0 deletions src/algorithms/graph/dijkstra/README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
# Dijkstra's Algorithm

_Read this in other languages:_
[_한국어_](README.ko-KR.md)

Dijkstra's algorithm is an algorithm for finding the shortest
paths between nodes in a graph, which may represent, for example,
road networks.
Expand Down
29 changes: 29 additions & 0 deletions src/algorithms/graph/kruskal/README.ko-KR.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# 크루스칼 알고리즘

크루스칼 알고리즘은 두 트리를 연결하는 최소 간선 가중치를 찾는 최소 신장 트리 알고리즘입니다.
각 단계에서 비용을 더하는 연결된 가중 그래프에 대한 최소 신장 트리를 찾기 때문에 그래프 이론에서의 그리디 알고리즘입니다. 즉, 트리의 모든 간선의 총 가중치가 최소화되는 모든 정점을 포함하는 트리를 형성하는 간선의 하위 집합을 찾습니다. 그래프가 연결되어 있지 않으면 최소 신장 포레스트(연결된 각 구성 요소의 최소 신장 트리)를 찾습니다.

![Kruskal Algorithm](https://upload.wikimedia.org/wikipedia/commons/5/5c/MST_kruskal_en.gif)

![Kruskal Demo](https://upload.wikimedia.org/wikipedia/commons/b/bb/KruskalDemo.gif)

유클리드 거리를 기반으로 한 크루스칼 알고리즘의 데모입니다.

## 최소 신장 트리

**최소 신장 트리(MST)** 또는 최소 가중치 신장 트리는 연결된 간선 가중치 무 방향 그래프의 간선의 하위 집합으로, 사이클 없이 가능한 최소 총 간선 가중치로 모든 정점을 연결합니다. 즉, 간선 가중치의 합이 가능한 작은 신장 트리입니다. 보다 일반적으로, 간선-가중치 비방향 그래프(꼭 연결되지는 않음)에는 연결된 구성 요소에 대한 최소 신장 트리의 결합인 최소 신장 포레스트(minimum spanning forest)가 있습니다.

![Minimum Spanning Tree](https://upload.wikimedia.org/wikipedia/commons/d/d2/Minimum_spanning_tree.svg)

평면 그래프와 해당 최소 신장 트리입니다. 각 간선은 가중치로 레이블이 지정되며, 이 값은 길이에 거의 비례합니다.

![Minimum Spanning Tree](https://upload.wikimedia.org/wikipedia/commons/c/c9/Multiple_minimum_spanning_trees.svg)

이 그림은 그래프에 최소 신장 트리가 두 개 이상 있을 수 있음을 보여 줍니다. 그림에서 그래프 아래의 두 트리는 주어진 그래프에서 최소 신장 트리가 될 수 있는 두 가지 경우입니다.

## 참조

- [Minimum Spanning Tree on Wikipedia](https://en.wikipedia.org/wiki/Minimum_spanning_tree)
- [Kruskal's Algorithm on Wikipedia](https://en.wikipedia.org/wiki/Kruskal%27s_algorithm)
- [Kruskal's Algorithm on YouTube by Tushar Roy](https://www.youtube.com/watch?v=fAuF0EuZVCk&list=PLLXdhg_r2hKA7DPDsunoDZ-Z769jWn4R8)
- [Kruskal's Algorithm on YouTube by Michael Sambol](https://www.youtube.com/watch?v=71UQH7Pr9kU&list=PLLXdhg_r2hKA7DPDsunoDZ-Z769jWn4R8)
3 changes: 3 additions & 0 deletions src/algorithms/graph/kruskal/README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
# Kruskal's Algorithm

_Read this in other languages:_
[_한국어_](README.ko-KR.md)

Kruskal's algorithm is a minimum-spanning-tree algorithm which
finds an edge of the least possible weight that connects any two
trees in the forest. It is a greedy algorithm in graph theory
Expand Down
14 changes: 10 additions & 4 deletions src/data-structures/heap/README.ko-KR.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,19 @@
# 힙 (자료구조)

컴퓨터 사이언스에서 힙은 특수한 트리구조의 데이터 구조로 다음과 같은 특성을 갖고 있습니다.
컴퓨터 과학에서의 ****은 아래에 설명된 힙 속성을 만족하는 전문화된 트리 기반 데이터구조입니다.

*최소 힙* 에서는 만약 `P``C`부모노드일 경우, `P` 키(값)는 `C` 키보다 작거나 동일합니다.
*최소 힙*에서 `P``C`상위 노드라면 `P` 키(값)는 `C` 키보다 작거나 같습니다.

![MinHeap](https://upload.wikimedia.org/wikipedia/commons/6/69/Min-heap.png)

- *최대 힙* 에서 `P` 키는 `C` 키보다 크거나 동일합니다.
*최대 힙*에서 `P` 키는 `C` 키보다 크거나 같습니다.

![Heap](https://upload.wikimedia.org/wikipedia/commons/3/38/Max-Heap.svg)

- 힙의 "최상단" 노드에는 부모노드가 존재하지 않으며, 루트노드라고 부릅니다.
상위 노드가 없는 힙의 "상단"에 있는 노드를 루트 노드라고 합니다.

## 참조

- [Wikipedia](<https://en.wikipedia.org/wiki/Heap_(data_structure)>)
- [YouTube](https://www.youtube.com/watch?v=t0Cq6tVNRBA&index=5&t=0s&list=PLLXdhg_r2hKA7DPDsunoDZ-Z769jWn4R8)

12 changes: 12 additions & 0 deletions src/data-structures/priority-queue/README.ko-KR.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# 우선 순위 큐

컴퓨터 과학에서 **우선 순위 큐**는 일반 큐 또는 스택 데이터 구조와 같은 추상 데이터 유형이지만, 여기서 각 요소에는 "우선 순위"가 연결됩니다.
우선 순위 큐에서는 우선 순위가 높은 요소가 낮은 요소 앞에 제공됩니다. 두 요소가 동일한 우선 순위를 가질 경우 큐의 순서에 따라 제공됩니다.

우선 순위 큐는 종종 힙을 사용하여 구현되지만 개념적으로는 힙과 구별됩니다. 우선 순위 대기열은 "리스트(list)" 또는 "맵(map)"과 같은 추상적인 개념입니다;
리스트가 링크드 리스트나 배열로 구현될 수 있는 것처럼 우선 순위 큐는 힙이나 정렬되지 않은 배열과 같은 다양한 다른 방법으로 구현될 수 있습니다.

## 참조

- [Wikipedia](https://en.wikipedia.org/wiki/Priority_queue)
- [YouTube](https://www.youtube.com/watch?v=wptevk0bshY&list=PLLXdhg_r2hKA7DPDsunoDZ-Z769jWn4R8&index=6)
3 changes: 2 additions & 1 deletion src/data-structures/priority-queue/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,8 @@ _Read this in other languages:_
[_Русский_](README.ru-RU.md),
[_日本語_](README.ja-JP.md),
[_Français_](README.fr-FR.md),
[_Português_](README.pt-BR.md)
[_Português_](README.pt-BR.md),
[_한국어_](README.ko-KR.md)

In computer science, a **priority queue** is an abstract data type
which is like a regular queue or stack data structure, but where
Expand Down

0 comments on commit 3fa1967

Please sign in to comment.