Brazilian Portuguese translation and typos fixes (#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>
This commit is contained in:
Mateus Pfeffer
2022-10-10 10:23:32 -03:00
committed by GitHub
parent 9ef6650207
commit da6ae08851
34 changed files with 567 additions and 145 deletions

View File

@@ -3,7 +3,7 @@
O **bloom filter** é uma estrutura de dados probabilística
espaço-eficiente designada para testar se um elemento está
ou não presente em um conjunto de dados. Foi projetado para ser
incrivelmente rápido e utilizar o mínimo de memória ao
incrivelmente rápida e utilizar o mínimo de memória ao
potencial custo de um falso-positivo. Correspondências
_falsas positivas_ são possíveis, contudo _falsos negativos_
não são - em outras palavras, a consulta retorna
@@ -12,7 +12,7 @@ não são - em outras palavras, a consulta retorna
Bloom propôs a técnica para aplicações onde a quantidade
de entrada de dados exigiria uma alocação de memória
impraticavelmente grande se as "convencionais" técnicas
error-free hashing fossem aplicado.
error-free hashing fossem aplicadas.
## Descrição do algoritmo

View File

@@ -1,8 +1,8 @@
# Conjunto Disjuntor (Disjoint Set)
# Conjunto Disjunto (Disjoint Set)
**Conjunto Disjuntor**
**Conjunto Disjunto**
**Conjunto Disjuntor** é uma estrutura de dados (também chamado de
**Conjunto Disjunto** é uma estrutura de dados (também chamado de
estrutura de dados de unionfind ou mergefind) é uma estrutura de dados
que rastreia um conjunto de elementos particionados em um número de
subconjuntos separados (sem sobreposição).
@@ -10,9 +10,9 @@ Ele fornece operações de tempo quase constante (limitadas pela função
inversa de Ackermann) para *adicionar novos conjuntos*, para
*mesclar/fundir conjuntos existentes* e para *determinar se os elementos
estão no mesmo conjunto*.
Além de muitos outros usos (veja a seção Applications), conjunto disjuntor
Além de muitos outros usos (veja a seção Applications), conjuntos disjuntos
desempenham um papel fundamental no algoritmo de Kruskal para encontrar a
árvore geradora mínima de um gráfico (graph).
árvore geradora mínima de um grafo (graph).
![disjoint set](https://upload.wikimedia.org/wikipedia/commons/6/67/Dsu_disjoint_sets_init.svg)

View File

@@ -4,7 +4,7 @@ Na ciência da computação, uma **lista duplamente conectada** é uma estrutura
de dados vinculada que se consistem em um conjunto de registros
sequencialmente vinculados chamados de nós (nodes). Em cada nó contém dois
campos, chamados de ligações, que são referenciados ao nó anterior e posterior
de uma sequência de nós. O começo e o fim dos nós anteriormente e posteiormente
de uma sequência de nós. O começo e o fim dos nós anteriormente e posteriormente
ligados, respectiviamente, apontam para algum tipo de terminação, normalmente
um nó sentinela ou nulo, para facilitar a travessia da lista. Se existe
somente um nó sentinela, então a lista é ligada circularmente através do nó
@@ -20,7 +20,7 @@ Enquanto adicionar ou remover um nó de uma lista duplamente vinculada requer
alterar mais ligações (conexões) do que em uma lista encadeada individualmente
(singly linked list), as operações são mais simples e potencialmente mais
eficientes (para nós que não sejam nós iniciais) porque não há necessidade
de se manter rastreamento do nó anterior durante a travessia ou não há
de manter um rastreamento do nó anterior durante a travessia ou não há
necessidade de percorrer a lista para encontrar o nó anterior, para que
então sua ligação/conexão possa ser modificada.
@@ -44,7 +44,7 @@ Add(value)
end Add
```
### Deletar
### Remoção
```text
Remove(head, value)

View File

@@ -1,6 +1,6 @@
# Tabela de Hash (Hash Table)
Na ciência da computação, uma **tabela de hash** (hash map) é uma
Na ciência da computação, uma **tabela de hash** (hash table) é uma
estrutura de dados pela qual implementa um tipo de dado abstrado de
*array associativo*, uma estrutura que pode *mapear chaves para valores*.
Uma tabela de hash utiliza uma *função de hash* para calcular um índice
@@ -10,7 +10,7 @@ pode ser encontrado.
Idealmente, a função de hash irá atribuir a cada chave a um bucket único,
mas a maioria dos designs de tabela de hash emprega uma função de hash
imperfeita, pela qual poderá causar colisões de hashes onde a função de hash
gera o mesmo índice para mais de uma chave.Tais colisões devem ser
gera o mesmo índice para mais de uma chave. Tais colisões devem ser
acomodados de alguma forma.
![Hash Table](./images/hash-table.jpeg)

View File

@@ -1,7 +1,7 @@
# Fila de Prioridade (Priority Queue)
Na ciência da computação, uma **fila de prioridade** é um tipo de dados
abastrato que é como uma fila regular (regular queue) ou estrutura de
Na ciência da computação, uma **fila de prioridade** é um tipo de estrutura de
dados abastrata que é como uma fila regular (regular queue) ou estrutura de
dados de pilha (stack), mas adicionalmente cada elemento possui uma
"prioridade" associada.
@@ -10,11 +10,11 @@ antes de um elemento com baixa prioridade. Caso dois elementos posusam a
mesma prioridade, eles serão servidos de acordo com sua ordem na fila.
Enquanto as filas de prioridade são frequentemente implementadas com
pilhas (heaps), elas são conceitualmente distintas das pilhas (heaps).
pilhas (stacks), elas são conceitualmente distintas das pilhas (stacks).
A fila de prioridade é um conceito abstrato como uma "lista" (list) ou
um "mapa" (map); assim como uma lista pode ser implementada com uma
lista encadeada (liked list) ou um array, a fila de prioridade pode ser
implementada com uma pilha (heap) ou com uima variedade de outros métodos,
implementada com uma pilha (stack) ou com uma variedade de outros métodos,
como um array não ordenado (unordered array).
## Referências

View File

@@ -1,14 +1,14 @@
# Stack
# Pilha (Stack)
Na ciência da computação, um **stack** é uma estrutura de dados abstrata
Na ciência da computação, uma **pilha** é uma estrutura de dados abstrata
que serve como uma coleção de elementos com duas operações principais:
* **push**, pela qual adiciona um elemento à coleção, e
* **pop**, pela qual remove o último elemento adicionado.
A ordem em que os elementos saem de um _stack_ dá origem ao seu
nome alternativo, LIFO (last in, first out). Adicionalmente, uma
espiar a operação pode dar acesso ao topo sem modificar o _stack_.
nome alternativo, LIFO (last in, first out). Adicionalmente, uma operação
de espiada (peek) pode dar acesso ao topo sem modificar o _stack_.
O nome "stack" para este tipo de estrutura vem da analogia de
um conjunto de itens físicos empilhados uns sobre os outros,
o que facilita retirar um item do topo da pilha, enquanto para chegar a

View File

@@ -8,7 +8,7 @@
Na ciência da computação, uma **árvore** é uma estrutura de dados
abstrada (ADT) amplamente utilizada - ou uma estrutura de dados
implementando este ADT que simula uma estrutura hierarquica de árvore,
implementando este ADT que simula uma estrutura hierárquica de árvore,
com valor raíz e sub-árvores de filhos com um nó pai, representado
como um conjunto de nós conectados.

View File

@@ -1,9 +1,9 @@
# Trie
# Árvore de Prefixos (Trie)
Na ciência da computação, uma **trie**, também chamada de árvore digital (digital tree)
e algumas vezes de _radix tree_ ou _prefix tree_ (tendo em vista que eles
podem ser pesquisados por prefixos), é um tipo de árvore de pesquisa, uma
uma estrutura de dados de árvore ordenada que é usado para armazenar um
podem ser pesquisados por prefixos), é um tipo de árvore de pesquisa, uma
estrutura de dados de árvore ordenada que é usado para armazenar um
conjunto dinâmico ou matriz associativa onde as chaves são geralmente _strings_.
Ao contrário de uma árvore de pesquisa binária (binary search tree),
nenhum nó na árvore armazena a chave associada a esse nó; em vez disso,