Estruturas de Dados Domine as práticas essenciais em C, Java, C#, Python e JavaScript
Thiago Leite e CarvalhoConteúdo
Edição atualizada em 02/2024.
As estruturas de dados são a base para a construção de algoritmos eficientes que possibilitam a construção sistemas computacionais de alta performance. Elas permitem o armazenamento e manipulação de dados e são essenciais para a solução de problemas complexos em diversas áreas em evidência: inteligência artificial, processamento de imagens, ciência de dados, Machine Learning e Engenharia de Software.
Neste livro, Thiago Leite desmistifica as estruturas de dados clássicas, que são apresentadas nas principais linguagens do mercado: C, Java, C#, Python e JavaScript. Do básico ao avançado, você conhecerá conceitos e práticas de cada ED de forma objetiva, com exercícios e resoluções para complementar seu aprendizado. Com esse conhecimento, você saberá escolher quais as estruturas de dados mais adequadas e eficientes para cada contexto específico no seu dia a dia em desenvolvimento de software e assim conseguirá criar a melhor solução para seus problemas.
Sumário
Parte 1: Dentro da Matrix
- 1 Introdução
- 2 Conceitos básicos
- 2.1 O que é dado?
- 2.2 O que é estrutura?
- 2.3 O que são estruturas de dados?
- 2.4 O que é informação?
- 2.5 O que é TD e TAD?
- 2.6 O que é um ponteiro?
- 2.7 Memória
- 2.8 Resumo
- 3 Vetor e Matriz
- 3.1 Fundamentos
- 3.2 Vetores
- 3.3 Matrizes
- 3.4 Exercícios
- 4 Pilha
- 4.1 Fundamentos
- 4.2 Operações
- 4.3 Implementação
- 4.4 Exemplos de uso
- 4.5 Exercícios
- 5 Fila
- 5.1 Fundamentos
- 5.2 Operações
- 5.3 Tipos de fila
- 5.4 Implementação
- 5.5 Exemplos de uso
- 5.6 Exercícios
- 6 Lista
- 6.1 Fundamentos
- 6.2 Operações
- 6.3 Tipos de listas
- 6.4 Implementação
- 6.5 Exemplos de uso
- 6.6 Exercícios
- 7 Vetor/Matriz vs. Pilha vs. Fila vs. Lista
- 8 Árvore
- 8.1 Fundamentos
- 8.2 Operações
- 8.3 Tipos de árvores
- 8.4 Ordenação
- 8.5 Implementação
- 8.6 Exemplos de uso
- 8.7 Exercícios
- 9 Grafo
- 9.1 Fundamentos
- 9.2 Operações
- 9.3 Tipos de grafos
- 9.4 Representações
- 9.5 Problemas clássicos
- 9.6 Algoritmos importantes
- 9.7 Exemplos de uso
- 9.8 Só isso sobre grafos?
- 10 Outras estruturas de grande relevância
- 10.1 Set (conjunto)
- 10.2 Tabela de dispersão (Hashtable)
- 10.3 Heap
Parte 2: O mundo real
- 11 Estruturas de Dados em Java
- 11.1 Vetor e Matriz
- 11.2 Pilha
- 11.3 Fila
- 11.4 Lista
- 11.5 Árvore
- 11.6 Set
- 11.7 Tabela de dispersão (Hashtable)
- 12 Estruturas de Dados em C#
- 12.1 Vetor e Matriz
- 12.2 Pilha
- 12.3 Fila
- 12.4 Lista
- 12.5 Árvore
- 12.6 Set
- 12.7 Tabela de dispersão (Hashtable)
- 13 Estruturas de Dados em Python
- 13.1 Vetor e Matriz
- 13.2 Pilha
- 13.3 Fila
- 13.4 Lista
- 13.5 Árvore
- 13.6 Set
- 13.7 Tabela de dispersão (Hashtable)
- 13.8 Tuple
- 14 Estruturas de Dados em JavaScript
- 14.1 Vetor e Matriz
- 14.2 Pilha
- 14.3 Fila
- 14.4 Lista
- 14.5 Árvore
- 14.6 Set
- 14.7 Tabela de dispersão (Hashtable)
Parte 3: Conclusão e apêndices
- 15 Chegamos ao fim
- 16 Referências bibliográficas
- 16.1 Livros
- 16.2 Links
- 17 Apêndice I: Ponteiro em C
- 18 Apêndice II: Struct em C
- 19 Apêndice III: Funções nativas
- 20 Apêndice IV: Recursividade
Autor
Thiago Leite e Carvalho
Thiago Leite e Carvalho é Mestre em Computação, analista de sistemas sênior da empresa de tecnologia do governo federal, onde também atua como instrutor. Atuou como professor universitário durante 8 anos, ministrando cadeiras de programação (front-end e back-end), engenharia de software, estrutura de dados, teoria da computação e compiladores. Entusiasta da plataforma Java, atua na área com esta linguagem desde 2003, possuindo 3 certificações. Também já trabalhou com a plataforma .Net por 4 anos. Gosta de estudar continuamente, principalmente sobre teorias e melhores práticas da Orientação a Objetos, Qualidade de Código e Arquitetura de Software. Além disto, contribui e possui projetos open source e cursos no Udemy.
Dados do produto
- Número de páginas:
- 320
- ISBN:
- 978-85-5519-338-5
- Data publicação:
- 06/2023. Atualizado em 02/2024.