Clique aqui para acessar o código fonte do repositório.
Data Structure Course 2 / Curso de Estrutura de Dados 2
:books: Java approach to a recurring theme in computer science : Data Structure.
:books: Uma abordagem em java sobre um tema recorrente na ciência da computação : Estrutura de Dados.
Menu / Ementa
Sets / Conjuntos
- What are sets? / O que são os sets? ;
- Defining what a set is / Definindo o que é um set;
- Implementation of all methods of the class / Implementação de todos os métodos da classe;
- Optimization of insertion methods / Otimização de métodos de inserção;
HashTables / Tabelas de Espalhamento
- Defining what are hashtables / Definindo o que são tabelas de espalhamento ou dispersão;
- Defining insert functionality in a hashtable / Definindo a funcionalidade de inserção em uma tabela de espalhamento;
- Implementing the features of removal and verification of the existence of elements in a hashtable / Implementando as funcionalidades de remoção e de verificação de existência de elementos em uma tabela de espalhamento;
- Optimizing the data structure of sets with spreading tables / Otimizando a estrutura de dados de sets com tabelas ds espalhamento.
Maps / Mapas
- Defining what maps are / Definindo o que são mapas;
- Defining the associative structure / Definindo a estrutura associativa;
- Optimizing maps with hashtables / Otimizando mapas com tabelas de espalhamento;
- Implementing key search and element removal / Implementando a pesquisa por chaves e remoção de elementos;
- Entering and retrieving values from a map / Inserindo e recuperando valores de um mapa;
Binary Tree / Árvore Binária
- What are binary trees? / O que são árvores binárias?;
- Defining the most basic structure of a binary tree: the node / Definindo a estrutura mais básica de uma árvore binária: o nó;
- Insertion of nodes and definition of the root of a binary tree / Inserção de nós e definição da raiz de uma árvore binária;
- Implementing recursive algorithms in the process of inserting nodes in a binary tree / Implementando algoritmos recursivos no processo de inserção de nós em uma árvore binária;
- Implementing a recursive search on binary trees / Implementando uma busca recursiva em árvores binárias;
- Traversing binary trees: "in order" algorithm / Travessia de árvores binárias: algoritmo "em ordem";
- Traversing binary trees: "pre-order" algorithm / Travessia de árvores binárias: algoritmo "pré ordem" ;
- Traversing binary trees: "post-order" algorithm / Travessia de árvores binárias: algoritmo "pós ordem";
- Calculating the height of a binary tree / Calculando a altura de uma árvore binária.
Sets / Conjuntos
Sets são estruturas de dados que agem como se fossem listas ligadas ou listas duplamente ligadas, porém elas possuem uma característica
importante: elas não permitem elementos duplicados.Quando os sets recebem um elemento duplicado para ser inserido, o conteúdo do set
não é modificado e nenhuma exceção é lançada.Há uma variedade de estratégias para verificação de duplicidade dos itens em um set. A
abordagem pode ser mais simples, como em uma busca linear (algoritmo mais dispendioso) até uma verificação baseada no hash code dos
objetos.
HashTables / Tabelas de Espalhamento
Em ciência da computação, uma tabela de dispersão (também conhecida por tabela de espalhamento ou tabela hash, do inglês hash) é uma
estrutura de dados especial, que associa chaves de pesquisa a valores. Seu objetivo é, a partir de uma chave simples, fazer uma busca
rápida e obter o valor desejado. É algumas vezes traduzida como tabela de escrutínio.
Maps / Mapas
Os mapas são estruturas de dados que são chamadas de estruturas associativas. Estas estruturas possuem esse nome pois permitem associar
um valor de acesso a um determinado elemento.
Você pode imaginar os mapas como sendo um dicionário. Se você quiser saber o significado de uma palavra, você procura a palavra desejada
no dicionário. Após localizar a palavra, você conseguirá o acesso ao seu significado.
Veja que no exemplo acima temos a demonstração clássica de uma estrutura associativa no estilo de um mapa. Você tem uma chave, que é a
palavra desejada, e um valor associado, no caso, o significado da palavra. Perceba também o fato de que uma palavra não aparece de maneira
repetida em um dicionário. Essa mesma regra vale para os mapas: as chaves em um mapa não podem ser duplicadas.
Binary Tree / Árvore Binária
Árvores binárias são estruturas de dados hierárquicas que armazenam os elementos de maneira classificada.Árvores binárias são constituídas
por um enlace de outra estrutura: os nós. Os nós são caracterizados por duas informações: o valor, que corresponde ao elemento a ser
armazenado, e o peso. O peso do nó é utilizado para categorizar e direcionar o nó dentro da árvore binária.
History / História
- See Commit changes for details.
Consulte Mudanças de commit para obter detalhes.