8000 Brazilian Portuguese translation and typos fixes (#943) · rogercady/javascript-algorithms@da6ae08 · GitHub
[go: up one dir, main page]

Skip to content

Commit da6ae08

Browse files
StPfeffertrekhleb
andauthored
Brazilian Portuguese translation and typos fixes (trekhleb#943)
* Update README.pt-BR.md * TRIE README.pt-BR typo * TREE README.pt-BR typo * Stack README.pt-BR typo * Priority Queue README.pt-BR typo * hash-table README.pt-BR typo * doubly-linked-list README.pt-BR typo * disjoint-set README.pt-BR typo * bloom-filter README.pt-BR typo * merge-sort pt-BR translation * merge-sort README added pt-BR option * insertion sort pt-BR translation * insertion sort README added pt-br option * heap-sort pt-BR translation * heap-sort READMED added pt-BR option * bubble sort pt-BR typo * pt-BR translation for sorting algorithms Fixed typos and translated all the missing algorithms * Update README.pt-BR.md * linked list pt-BR translation * ml pt-BR translation * fix typo in README Co-authored-by: Oleksii Trekhleb <trehleb@gmail.com>
1 parent 9ef6650 commit da6ae08

File tree

34 files changed

+567
-145
lines changed

34 files changed

+567
-145
lines changed

README.pt-BR.md

Lines changed: 112 additions & 105 deletions
Large diffs are not rendered by default.

src/algorithms/linked-list/reverse-traversal/README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
# Reversed Linked List Traversal
22

33
_Read this in other languages:_
4-
[中文](README.zh-CN.md)
4+
[_中文_](README.zh-CN.md),
5+
[_Português_](README.pt-BR.md)
56

67
The task is to traverse the given linked list in reversed order.
78

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# Travessia de Lista Encadeada Reversa
2+
3+
_Leia isso em outros idiomas:_
4+
[_中文_](README.zh-CN.md),
5+
[_English_](README.md)
6+
7+
A tarefa é percorrer a lista encadeada fornecida em ordem inversa.
8+
9+
Por exemplo, para a seguinte lista vinculada:
10+
11+
![](https://upload.wikimedia.org/wikipedia/commons/6/6d/Singly-linked-list.svg)
12+
13+
A ordem de travessia deve ser:
14+
15+
```texto
16+
37 → 99 → 12
17+
```
18+
19+
A complexidade de tempo é `O(n)` porque visitamos cada nó apenas uma vez.
20+
21+
## Referência
22+
23+
- [Wikipedia](https://en.wikipedia.org/wiki/Linked_list)

src/algorithms/linked-list/traversal/README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@
22

33
_Read this in other languages:_
44
[_Русский_](README.ru-RU.md),
5-
[中文](README.zh-CN.md)
5+
[_中文_](README.zh-CN.md),
6+
[_Português_](README.pt-BR.md)
67

78
The task is to traverse the given linked list in straight order.
89

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# Travessia de Lista Encadeada
2+
3+
_Leia isso em outros idiomas:_
4+
[_Русский_](README.ru-RU.md),
5+
[_中文_](README.zh-CN.md),
6+
[_English_](README.md)
7+
8+
A tarefa é percorrer a lista encadeada fornecida em ordem direta.
9+
10+
Por exemplo, para a seguinte lista vinculada:
11+
12+
![Singly linked list](https://upload.wikimedia.org/wikipedia/commons/6/6d/Singly-linked-list.svg)
13+
14+
A ordem de travessia deve ser:
15+
16+
```texto
17+
12 → 99 → 37
18+
```
19+
20+
A complexidade de tempo é `O(n)` porque visitamos cada nó apenas uma vez.
21+
22+
## Referência
23+
24+
- [Wikipedia](https://en.wikipedia.org/wiki/Linked_list)

src/algorithms/ml/k-means/README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
# k-Means Algorithm
22

3+
_Read this in other languages:_
4+
[_Português_](README.pt-BR.md)
5+
36
The **k-Means algorithm** is an unsupervised Machine Learning algorithm. It's a clustering algorithm, which groups the sample data on the basis of similarity between dimensions of vectors.
47

58
In k-Means classification, the output is a set of classes assigned to each vector. Each cluster location is continuously optimized in order to get the accurate locations of each cluster such that they represent each group clearly.
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
# Algoritmo k-Means
2+
3+
_Leia isso em outros idiomas:_
4+
[_English_](README.md)
5+
6+
O **algoritmo k-Means** é um algoritmo de aprendizado de máquina não supervisionado. É um algoritmo de agrupamento, que agrupa os dados da amostra com base na semelhança entre as dimensões dos vetores.
7+
8+
Na classificação k-Means, a saída é um conjunto de classes atribuídas a cada vetor. Cada localização de cluster é continuamente otimizada para obter as localizações precisas de cada cluster de forma que representem cada grupo claramente.
9+
10+
A ideia é calcular a similaridade entre a localização do cluster e os vetores de dados e reatribuir os clusters com base nela. [Distância Euclidiana](https://github.com/trekhleb/javascript-algorithms/tree/master/src/algorithms/math/euclidean-distance) é usado principalmente para esta tarefa.
11+
12+
![Distância Euclidiana entre dois pontos](https://upload.wikimedia.org/wikipedia/commons/5/55/Euclidean_distance_2d.svg)
13+
14+
_Fonte: [Wikipedia](https://en.wikipedia.org/wiki/Euclidean_distance)_
15+
16+
O algoritmo é o seguinte:
17+
18+
1. Verifique se há erros como dados inválidos/inconsistentes
19+
2. Inicialize os locais do cluster `k` com pontos `k` iniciais/aleatórios
20+
3. Calcule a distância de cada ponto de dados de cada cluster
21+
4. Atribua o rótulo do cluster de cada ponto de dados igual ao do cluster em sua distância mínima
22+
5. Calcule o centroide de cada cluster com base nos pontos de dados que ele contém
23+
6. Repita cada uma das etapas acima até que as localizações do centroide estejam variando
24+
25+
Aqui está uma visualização do agrupamento k-Means para melhor compreensão:
26+
27+
![KNN Visualization 1](https://upload.wikimedia.org/wikipedia/commons/e/ea/K-means_convergence.gif)
28+
29+
_Fonte: [Wikipedia](https://en.wikipedia.org/wiki/K-means_clustering)_
30+
31+
Os centroides estão se movendo continuamente para criar uma melhor distinção entre os diferentes conjuntos de pontos de dados. Como podemos ver, após algumas iterações, a diferença de centroides é bastante baixa entre as iterações. Por exemplo, entre as iterações `13` e `14` a diferença é bem pequena porque o otimizador está ajustando os casos limite.
32+
33+
## Referências
34+
35+
- [k-Means neighbors algorithm on Wikipedia](https://en.wikipedia.org/wiki/K-means_clustering)

src/algorithms/ml/knn/README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
# k-Nearest Neighbors Algorithm
22

3+
_Read this in other languages:_
4+
[_Português_](README.pt-BR.md)
5+
36
The **k-nearest neighbors algorithm (k-NN)** is a supervised Machine Learning algorithm. It's a classification algorithm, determining the class of a sample vector using a sample data.
47

58
In k-NN classification, the output is a class membership. An object is classified by a plurality vote of its neighbors, with the object being assigned to the class most common among its `k` nearest neighbors (`k` is a positive integer, typically small). If `k = 1`, then the object is simply assigned to the class of that single nearest neighbor.

src/algorithms/ml/knn/README.pt-BR.md

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
# Algoritmo de k-vizinhos mais próximos
2+
3+
_Leia isso em outros idiomas:_
4+
[_English_](README.md)
5+
6+
O **algoritmo de k-vizinhos mais próximos (k-NN)** é um algoritmo de aprendizado de máquina supervisionado. É um algoritmo de classificação, determinando a classe de um vetor de amostra usando dados de amostra.
7+
8+
Na classificação k-NN, a saída é uma associação de classe. Um objeto é classificado por uma pluralidade de votos de seus vizinhos, com o objeto sendo atribuído à classe mais comum entre seus `k` vizinhos mais próximos (`k` é um inteiro positivo, tipicamente pequeno). Se `k = 1`, então o objeto é simplesmente atribuído à classe daquele único vizinho mais próximo.
9+
10+
The idea is to calculate the similarity between two data points on the basis of a distance metric. [Distância Euclidiana](https://github.com/trekhleb/javascript-algorithms/tree/master/src/algorithms/math/euclidean-distance) é usado principalmente para esta tarefa.
11+
12+
![Distância Euclidiana entre dois pontos](https://upload.wikimedia.org/wikipedia/commons/5/55/Euclidean_distance_2d.svg)
13+
14+
_Fonte: [Wikipedia](https://en.wikipedia.org/wiki/Euclidean_distance)_
15+
16+
O algoritmo é o seguinte:
17+
18+
1. Verifique se há erros como dados/rótulos inválidos.
19+
2. Calcule a distância euclidiana de todos os pontos de dados nos dados de treinamento com o ponto de classificação
20+
3. Classifique as distâncias dos pontos junto com suas classes em ordem crescente
21+
4. Pegue as classes iniciais `K` e encontre o modo para obter a classe mais semelhante
22+
5. Informe a classe mais semelhante
23+
24+
Aqui está uma visualização da classificação k-NN para melhor compreensão:
25+
26+
![KNN Visualization 1](https://upload.wikimedia.org/wikipedia/commons/e/e7/KnnClassification.svg)
27+
28+
_Fonte: [Wikipedia](https://en.wikipedia.org/wiki/K-nearest_neighbors_algorithm)_
29+
30+
A amostra de teste (ponto verde) deve ser classificada em quadrados azuis ou em triângulos vermelhos. Se `k = 3` (círculo de linha sólida) é atribuído aos triângulos vermelhos porque existem `2` triângulos e apenas `1` quadrado dentro do círculo interno. Se `k = 5` (círculo de linha tracejada) é atribuído aos quadrados azuis (`3` quadrados vs. `2` triângulos dentro do círculo externo).
31+
32+
Outro exemplo de classificação k-NN:
33+
34+
![KNN Visualization 2](https://media.geeksforgeeks.org/wp-content/uploads/graph2-2.png)
35+
36+
_Fonte: [GeeksForGeeks](https://media.geeksforgeeks.org/wp-content/uploads/graph2-2.png)_
37+
38+
Aqui, como podemos ver, a classificação dos pontos desconhecidos será julgada pela proximidade com outros pontos.
39+
40+
É importante notar que `K` é preferível ter valores ímpares para desempate. Normalmente `K` é tomado como `3` ou `5`.
41+
42+
## Referências
43+
44+
- [k-nearest neighbors algorithm on Wikipedia](https://en.wikipedia.org/wiki/K-nearest_neighbors_algorithm)

src/algorithms/sorting/bubble-sort/README.pt-BR.md

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,19 @@
11
# Bubble Sort
22

3+
_Leia isso em outros idiomas:_
4+
[_English_](README.md)
5+
36
O bubble sort, ou ordenação por flutuação (literalmente "por bolha"), é um algoritmo de ordenação dos mais simples. A ideia é percorrer o vetor diversas vezes, e a cada passagem fazer flutuar para o topo o maior elemento da sequência. Essa movimentação lembra a forma como as bolhas em um tanque de água procuram seu próprio nível, e disso vem o nome do algoritmo.
47

58
![Algorithm Visualization](https://upload.wikimedia.org/wikipedia/commons/c/c8/Bubble-sort-example-300px.gif)
69

7-
## Complexity
10+
## Complexidade
811

9-
| Name | Best | Average | Worst | Memory | Stable | Comments |
12+
| Nome | Melhor | Média | Pior | Memória | Estável | Comentários |
1013
| --------------------- | :-------------: | :-----------------: | :-----------------: | :-------: | :-------: | :-------- |
11-
| **Bubble sort** | n | n<sup>2</sup> | n<sup>2</sup> | 1 | Yes | |
14+
| **Bubble sort** | n | n<sup>2</sup> | n<sup>2</sup> | 1 | Sim | |
1215

13-
## References
16+
## Referências
1417

1518
- [Wikipedia](https://pt.wikipedia.org/wiki/Bubble_sort)
1619
- [YouTube](https://www.youtube.com/watch?v=6Gv8vg0kcHc&index=27&t=0s&list=PLLXdhg_r2hKA7DPDsunoDZ-Z769jWn4R8)

0 commit comments

Comments
 (0)
0