Entendendo Estruturas de Dados

Entendendo Estruturas de Dados
× Entendendo Estruturas de Dados

Entendendo Estruturas de Dados

Compartilhar

Autor: Marcello La Rocca

ISBN impresso: 978-85-7522-931-6
ISBN ebook: 978-85-7522-932-3
Ano: 2025
Páginas: 304
Preço impresso: R$ 96,00 O ebook deste livro está disponível na Amazon.

2 opiniões | Opine sobre este livro

Descrição do livro

Apresentação de Daniel Zingaro

Estruturas de dados são fundamentais para organizar dados de forma eficiente. Também são uma parte importante da maioria das entrevistas de emprego de TI! Independentemente de você ser um iniciante em estruturas de dados ou alguém recapitulando conceitos aprendidos na escola, este livro oferece uma atualização rápida e prática, sem depender de matemática avançada, teorias abstratas ou demonstrações complicadas.

Entendendo Estruturas de Dados apresenta as estruturas de dados mais úteis e comuns que todo desenvolvedor precisa conhecer. Exemplos do mundo real lhe mostrarão como as estruturas de dados são usadas na prática, desde otimizar buscas até gerenciar a triagem em um pronto-socorro. Você vai adorar os desenhos divertidos, as histórias elucidativas e os úteis exemplos de código Python que dão vida às estruturas de dados. Diferente de textos acadêmicos carregados de jargões, este livro é prático e fácil de ler.

O que o livro fornece:

• Buscas rápidas com o uso de tabelas hash

• Árvores e árvores de busca binária para organizar dados

• Uso de grafos para modelar dados complexos

• As melhores estruturas de dados para um desafio de codificação

Para leitores que conhecem os fundamentos do Python. Serve como um acompanhamento perfeito para o livro Entendendo Algoritmos!

Marcello La Rocca é cientista, pesquisador e engenheiro full-stack. Ele contribuiu para o desenvolvimento de aplicações web e infraestrutura de machine learning de larga escala no X, na Microsoft e na Apple.

Beau Carnes foi o editor técnico deste livro.

“Acessível e completo. Permitirá que você inclua as estruturas de dados mais importantes em seu conjunto de ferramentas, prontas para ser usadas, e também fornece conhecimentos detalhados.” – Bruno Gonçalves, Data For Science, Inc.

“Mantém o equilíbrio certo entre simplificar demais e muita teoria.” – Patrick Regan, MGHPCC

“Esclarece realmente o assunto estruturas de dados de maneira amigável.” – Ritobrata Ghosh, Artificial Learning Systems

“Sou testemunha do profundo cuidado e do respeito de Marcello com os iniciantes e esse material. Devo parabenizá-lo.” – Da apresentação de Daniel Zingaro na Universidade de Toronto

Ver menos ▲

Sumário

  • Apresentação
  • Prefácio
  • Agradecimentos
  • Sobre o livro
  • Sobre o autor
  • 1 Introdução às estruturas de dados: por que você deve aprender sobre estruturas de dados
    • Bem-vindo a Entendendo Estruturas de Dados
    • O que são estruturas de dados?
    • Por que devo me preocupar com estruturas de dados?
    • Como usar estruturas de dados em um projeto?
    • Resumo
  • 2 Arrays estáticos: criando sua primeira estrutura de dados
    • O que é um array?
    • Arrays em Python
    • Operações com arrays
    • Os arrays em ação
    • Resumo
    • 3 Arrays ordenados: busca mais rápida, mas com um preço
      • Para que existem os arrays ordenados?
      • Implementando arrays ordenados
      • Resumo
    • 4 Notação big-O: um framework para a medição da eficiência de algoritmos
      • Como escolher a melhor opção?
      • Notação big-O
      • Exemplo de análise assintótica
      • Resumo
    • 5 Arrays dinâmicos: manipulando conjuntos de dados dinamicamente dimensionados
      • Limitações dos arrays estáticos
      • Como podemos aumentar o tamanho de um array?
      • A estante de troféus
      • Também devemos diminuir arrays?
      • Implementando um array dinâmico
      • Resumo
    • 6 Listas encadeadas: uma coleção dinâmica flexível
      • Listas encadeadas versus arrays
      • Listas simplemente encadeadas
      • Listas encadeadas ordenadas
      • Listas duplamente encadeadas
      • Listas encadeadas circulares
      • Resumo
    • 7 Tipos abstratos de dados: projetando o contêiner mais simples — o saco
      • Tipos abstratos de dados versus estruturas de dados
      • Contêineres
        • Sumário
      • O contêiner mais básico: o saco
      • Resumo
  • 8 Pilhas: empilhando dados antes de processá-los
    • Pilha como ADT
    • Pilha como estrutura de dados
    • Implementação com lista encadeada
    • Teoria versus mundo real
    • Mais aplicações de uma pilha
    • Resumo
  • 9 Filas: mantendo as informações na mesma ordem em que chegaram
    • Fila como tipo abstrato de dado
    • Fila como estrutura de dados
    • Implementação
    • E quanto aos arrays dinâmicos?
    • Mais aplicações de uma fila
    • Resumo
  • 10 Filas de prioridade e heaps: manipulando dados de acordo com sua prioridade
    • Estendendo as filas com prioridade
    • Filas de prioridade como estruturas de dados
    • Heap
    • Implementando um heap
    • As filas de prioridade em ação
    • Resumo
  • 11 Árvores binárias de busca: um contêiner balanceado
    • O que compõe uma árvore?
    • Árvores binárias de busca
    • Árvores balanceadas
    • Resumo
    • associativos
      • O problema do dicionário
      • Estruturas de dados implementando um dicionário
      • Tabelas hash
      • Hashing
      • Resolução de conflitos
      • Resumo
    • 13 Grafos: aprendendo a modelar relacionamentos complexos em dados
      • O que é um grafo?
      • Implementando grafos
      • Busca no grafo
      • O que vem a seguir
      • Resumo
    • 14 Índice remissivo
Ver sumário completo ▼

Sobre o autor

Marcello La Rocca

Marcello La Rocca é cientista, pesquisador e engenheiro full-stack. Ele contribuiu para o desenvolvimento de aplicações web e infraestrutura de machine learning de larga escala no X, na Microsoft e na Apple.… Ver perfil completo ▶

Opinião dos leitores

Leticia T m z

Ainda não terminei de ler o livro, mas já gostei muito do conteúdo que li!

Angel A G M

É uma opção boa didática para o iniciante. Porém, é necessário levar em conta que é apenas um livro cujo objetivo é ser um facilitador. Na área são necessários livros mais avançados.

Ver todas ▼