Fale com a gente no WhatsApp Fale com a gente no WhatsApp

Curso de Java - Estrutura de dados - Parte 2

Aprenda a trabalhar com mapas e árvores no Java

Nível Iniciante Categoria Desenvolvimento Back-end

  • Curso com 04h15 de vídeos
  • Certificado com 14 horas
  • 18 exercícios
  • 4 desafios de código

Sobre o curso

Armazenar conjuntos de dados pode ser um desafio e tanto em qualquer linguagem de programação, já que somos obrigados a pensar o tempo inteiro em maneiras otimizadas de manipulação desta sequência de informações, quer seja a respeito de recursos espaciais (como o hardware) ou a respeito de recursos temporais (a velocidade).

Para ajudar neste processo, existem algumas fórmulas que podem resolver os problemas temporais, os problemas espaciais, ou até mesmo ambos. A estas estruturas, damos o nome de estruturas de dados.

É de extrema importância para desenvolvedores conhecerem as principais estruturas de dados. Conhecendo estas estruturas, os desenvolvedores se tornam capazes de escolher a estrutura de dados mais adequada para cada uma das situações corriqueiras que envolvem a manipulação de conjuntos de informações.

Na segunda parte de nosso curso de Estrutura de Dados, iremos aprender sobre estruturas de dados mais complexas: os sets, as tabelas de espalhamento, os mapas e as árvores binárias

Armazenar conjuntos de dados pode ser um desafio e tanto em qualquer linguagem de programação, já que somos obrigados a pensar o tempo inteiro em maneiras otimizadas de manipulação desta sequência de informações, quer seja a respeito de recursos espaciais (como o hardware) ou a respeito de recursos temporais (a velocidade).

Para ajudar neste processo, existem algumas fórmulas que podem resolver os problemas temporais, os problemas espaciais, ou até mesmo ambos. A estas estruturas, damos o nome de estruturas de dados.

É de extrema importância para desenvolvedores conhecerem as principais estruturas de dados. Conhecendo estas estruturas, os desenvolvedores se tornam capazes de escolher a estrutura de dados mais adequada para cada uma das situações corriqueiras que envolvem a manipulação de conjuntos de informações.

Na segunda parte de nosso curso de Estrutura de Dados, iremos aprender sobre estruturas de dados mais complexas: os sets, as tabelas de espalhamento, os mapas e as árvores binárias

O que irá aprender?

Neste curso abordaremos conjuntos, mapas e árvores. São vídeo aulas e apostilas que mostram como implementar essas estruturas de dados no Java. Também serão passados exercícios para que você possa fixar, praticar e aplicar o conteúdo aprendido.

Dentre várias outras coisas, você será capaz de:

  • Compreender o funcionamento e a justificativa para a existência dos conjuntos (ou sets), além de realizar a implementação das funcionalidades básicas de um conjunto;
  • Entender a importância das tabelas de espalhamento, além de compreender a implementação das mesmas;
  • Implementar e compreender plenamente o funcionamento de mapas e outras estruturas associativas;
  • Entender a importância de árvores binárias em várias soluções modernas de software;
  • Implementar as funcionalidades básicas de inserção e busca em árvores binárias;
  • Compreender os algoritmos clássicos de travessia em árvores binárias;
  • Compreender a implementação de algoritmos recursivos de diferentes naturezas.

Pra quem é esse curso?

Este curso é destinado a estudantes e desenvolvedores que desejam aprofundar seus estudos no Java e desejam compreender melhor o funcionamento, as vantagens e as desvantagens das estruturas de dados mais comuns no dia-a-dia.

Quais os pré-requisitos para esse curso?

Os pré-requisitos não são obrigatórios, são apenas sugestões. Eles dão uma base de parte do conhecimento que é interessante ter para um bom aproveitamento nesse curso.

Metodologia

  • Videoaulas
  • Texto e imagens
  • Início Imediato
  • Desafios de código
  • Testes de aprendizado

Ambiente do curso

  • Java JDK 11 ou superior
  • Eclipse 09-2018 ou superior

Sobre o professor

Cleber Campomori

Cleber Campomori

Cleber é pós-graduado em Projeto e Desenvolvimento de Aplicações Web, além de Microsoft Specialist (HTML5/CSS3), Microsoft Certified Solutions Associate (MCSA) Web Applications e Microsoft Certified Solutions Developer (MCSD) Web Applications. Fascinado por Arquitetura de Software, Programação Funcional, Machine Learning e educação em geral. Também é conhecido como "o boladão".

Conteúdo programático

  1. Bem-vindo!

    Aula inaugural do curso

    5 aulas
    • Apresentação do curso
    • Introdução
    • Relembrando: o que são estruturas de dados?
    • Preparação do ambiente de desenvolvimento
    • O código-fonte deste curso está no GitHub!
  2. Sets

    Nesta aula, veremos o funcionamento básico e a implementação dos conjuntos (também chamados de sets)

    10 aulas
    • Apresentação
    • O que são os sets?
    • Importando o projeto da primeira parte do curso
    • Definindo o que é um set (ou conjunto)
    • Iniciando a implementação de um set ou conjunto
    • Testando a implementação do set ou conjunto
    • Otimizando o método de inserção
    • Questionário
    • Como funcionam os desafios?
    • Desafio de Código
  3. Tabelas de espalhamento

    Nesta aula, veremos como as tabelas de espalhamento funcionam e como estas podem auxiliar na performance de diferentes estruturas de dados

    9 aulas
    • Apresentação
    • O que são as tabelas de espalhamento?
    • Definindo o que são tabelas de espalhamento ou dispersão
    • Iniciando a implementação de uma tabela de espalhamento
    • Definindo a funcionalidade de inserção em uma tabela de espalhamento
    • Implementando as funcionalidades de remoção e de verificação de existência de elementos em uma tabela de espalhamento
    • Otimizando a estrutura de dados de sets com tabelas ds espalhamento
    • Questionário
    • Desafio de Código
  4. Mapas e associação de elementos

    Nesta aula, aprenderemos sobre a implementação de estruturas associativas: os mapas

    10 aulas
    • Apresentação
    • O que são os mapas?
    • Definindo o que são mapas
    • Definindo a estrutura associativa
    • Otimizando mapas com tabelas de espalhamento
    • Implementando a pesquisa por chaves e remoção de elementos
    • Inserindo e recuperando valores de um mapa
    • Testando a nossa implementação de mapa
    • Questionário
    • Desafio de Código
  5. Árvores

    Nesta aula, aprenderemos sobre uma das mais importantes estruturas de dados: as árvores

    14 aulas
    • Apresentação
    • O que são árvores binárias?
    • Definindo a estrutura mais básica de uma árvore binária: o nó
    • Inserção de nós e definição da raiz de uma árvore binária
    • Implementando algoritmos recursivos no processo de inserção de nós em uma árvore binária
    • Verificando o funcionamento da inserção de nós em nossa implementação de árvore binária
    • Entendendo de uma vez por todas um algoritmo recursivo
    • Implementando uma busca recursiva em árvores binárias
    • Travessia de árvores binárias: algoritmo "em ordem"
    • Travessia de árvores binárias: algoritmo "pré ordem"
    • Travessia de árvores binárias: algoritmo "pós ordem"
    • Calculando a altura de uma árvore binária
    • Questionário
    • Desafio de Código
Download da ementa

Cursos relacionados

Formação em que esse curso está inserido

Utilizada e amada por milhares! Veja mais opiniões reais

Plano de acesso total!

Tenha um ano de acesso completo a todos os cursos da plataforma, incluindo novos lançamentos, mentoria de carreira e suporte direto com os professores!

Um ano de acesso completo

Contrate agora e tenha acesso ilimitado a todo o nosso portfólio. Isso inclui:

  • 1 ano de acesso a todos os cursos
  • Cursos novos toda semana
  • Suporte direto com professores
  • Aplicativos para Android e iOS
  • Plano de carreira personalizado
  • Certificados digitais inclusos
  • Suporte com SLA de 4 horas úteis
  • Acesso offline através dos apps
R$ 129,00 ECONOMIZE R$ 960,00
12x R$ 49,00 sem juros, no cartão de crédito
Matricule-se agora
Garantia incondicional de satisfação
Garantia incondicional de satisfação

Confiamos tanto nos resultados dos nossos cursos, que criamos uma garantia incondicional de satisfação para você, que são 7 dias de teste!