Curso de Java - Estrutura de dados - Parte 1 \| TreinaWeb             Promoção no ar   Matricule-se agora e garanta **54% de desconto**  

  Termina em   Tempo restante da oferta: 15 Horas 

 39 Min 

 31 Seg 

   Tempo restante da oferta: 15 39 31 

  [Assinar →](https://www.treinaweb.com.br/checkout/pagamento/plano/anual?cupom=TW-SCLIENTE26) 

   [                ](https://www.treinaweb.com.br)  Explorar  

 [ Quanto custa? ](#assinatura) [ FAQ ](#faq) [Matricule-se](#assinatura) [ Entrar ](https://www.treinaweb.com.br/login) 

    [ Início ](https://www.treinaweb.com.br) [ Cursos ](https://www.treinaweb.com.br/cursos) [ Back-end ](https://www.treinaweb.com.br/categoria/desenvolvimento-back-end) Java - Estrutura de dados - Parte 1   Curso 

# Java - Estrutura de dados - Parte 1

Aprenda as principais estruturas de dados no Java

  ![](https://d1s1vlotnxklap.cloudfront.net/professores/cleber-campomori.webp)   [ Cleber Campomori ](https://www.treinaweb.com.br/professor/cleber-campomori) Instrutor  

  ![](https://d2knvm16wkt3ia.cloudfront.net/treinaweb/cursos/og/java-estrutura-dados-parte1.png)   Assista à apresentação  Assistir: Apresentação: Java - Estrutura de dados - Parte 1  

- 05h51 de vídeos
- 68 aulas
- 31 exercícios
- Certificado de 18 horas
- Iniciante

 **+200 mil alunos** já aceleraram a carreira aqui, com **professores que atuam no mercado**

## Acesso completo a todos os cursos e dezenas de Formações.

 12 meses 

  Economize R$ 840,00  54% OFF 

 de 12x R$ 129,00 por apenas

 12x  R$ 59,00

 sem juros no cartão de crédito ou R$ 599,00 à vista

  Oferta termina em  **15h 39min 31s**

- Acesso imediato e ilimitado durante 1 ano.
- Plano de carreira personalizado.
- Suporte direto com professores.
- E muito mais!

 [Matricule-se agora](https://www.treinaweb.com.br/checkout/pagamento/plano/anual?cupom=TW-SCLIENTE26)

  Visão geral

## 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.

### 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.

   Competências

## O que irá aprender?

- Entender os princípios básicos do gerenciamento de memória pela JVM;
- Criar arquivos de diferentes maneiras;
- Conhecer estruturas de dados comuns, como vetores, listas, filas e pilhas;
- Entender a implementação interna e as funcionalidades disponibilizadas pelos vetores, pelas listas, pelas pilhas e pelas filas;
- Compreender as vantagens e desvantagens envolvidas na utilização de vetores, listas, filas e pilhas;
- Entender as implementações-padrão do Java para vetores, listas, filas e pilhas.

   Antes de começar

## Pré-requisitos sugeridos

 Não são obrigatórios — apenas sugestões de base para você tirar mais proveito do curso.

 [  ![](https://d2knvm16wkt3ia.cloudfront.net/assets/svg-icon/java.svg)    **Java - Fundamentos**   16h · Iniciante   ](https://www.treinaweb.com.br/curso/java-fundamentos) [  ![](https://d2knvm16wkt3ia.cloudfront.net/assets/svg-icon/java.svg)    **Java - Orientação a objetos**   22h · Iniciante   ](https://www.treinaweb.com.br/curso/java-orientacao-a-objetos) 

   Ementa completa

## Conteúdo programático

 8 módulos, 68 aulas e 31 exercícios , num total de 05h51 de vídeo .

    01   Bem-vindo!   4 aulas  

- Apresentação do curso
- Introdução
- O que são estruturas de dados?
- Preparação do ambiente de desenvolvimento

     02   Gerência básica de memória pela JVM   8 aulas  

- Apresentação
- Criando o projeto do curso
- Gerenciamento básico de memória na JVM: Value-Types e Reference-Types
- Gerenciamento básico de memória na JVM: Stack e Heap
- Gerenciamento básico de memória na JVM: Ponteiros e os métodos equals() e hashCode()
- Questionário
- Como funcionam os desafios?
- Desafio de Código

     03   Vetores   15 aulas  

- Apresentação
- Antes: o que são arrays?
- Por que estamos falando de arrays?
- Estruturas de Dados - vetores: conceitos básicos
- Estruturas de Dados - vetores: encapsulando as funcionalidades de um vetor
- Estruturas de Dados - vetores: criando estruturas genéricas
- Estruturas de Dados - vetores: restrições na utilização de generics
- Estruturas de Dados - vetores: criando a funcionalidade de inserção
- Estruturas de Dados - vetores: criando a funcionalidade de inserção em uma posição específica
- Estruturas de Dados - vetores: iterando sob um vetor
- Estruturas de Dados - vetores: adicionando as funcionalidades contem() e indice()
- Estruturas de Dados - vetores: adicionando a funcionalidade de remoção de elementos
- Questionário
- Desafio de Código
- Desafio de Código

     04   Listas ligadas   16 aulas  

- Apresentação
- O que são listas ligadas?
- Como as listas ligadas se comportam?
- Estruturas de Dados - listas ligadas: definições de listas ligadas
- Estruturas de Dados - listas ligadas: criando uma representação genérica para um nó
- Estruturas de Dados - listas ligadas: criando a estrutura básica de uma lista ligada
- Estruturas de Dados - listas ligadas: criando as funcionalidades de inserção, de retorno do tamanho e de verificação de existência de nós
- Estruturas de Dados - listas ligadas: implementando o método toString() e conhecendo o StringBuilder
- Estruturas de Dados - listas ligadas: criando as funcionalidades de inserção em uma posição e de recuperação de nós
- Estruturas de Dados - listas ligadas: depurando o código e entendendo melhor a relação entre os nós de uma lista ligada
- Estruturas de Dados - listas ligadas: implementando os métodos contem() e indice()
- Estruturas de Dados - listas ligadas: implementando as funcionalidades de remoção
- Estruturas de Dados - listas ligadas: conhecendo a classe LinkedList
- Questionário
- Desafio de Código
- Desafio de Código

     05   Listas duplamente ligadas   8 aulas  

- Apresentação
- O que são listas duplamente ligadas?
- Estruturas de Dados - listas duplamente ligadas: conceitos básicos e primeiras implementações
- Estruturas de Dados - listas duplamente ligadas: modificando os métodos de inserção
- Estruturas de Dados - listas duplamente ligadas: modificando os métodos de remoção
- Estruturas de Dados - listas duplamente ligadas: testando a lista duplamente ligada
- Questionário
- Desafio de Código

     06   Pilhas   8 aulas  

- Apresentação
- O que são pilhas?
- Estruturas de Dados - pilhas: conceitos básicos
- Estruturas de Dados - pilhas: implementando as funcionalidades de empilhamento e de verificação de existência de nós
- Estruturas de Dados - pilhas: implementando a funcionalidade de desempilhamento
- Estruturas de Dados - pilhas: testando a nossa estrutura de pilhas
- Questionário
- Desafio de Código

     07   Filas   8 aulas  

- Apresentação
- O que são filas?
- Estruturas de Dados - filas: conceitos básicos
- Estruturas de Dados - filas: definindo as funcionalidades a serem implementadas
- Estruturas de Dados - filas: implementando as funcionalidades de enfileiramento, desenfileiramento e verificação de presença de nós
- Estruturas de Dados - filas: testando a nossa estrutura de filas
- Questionário
- Desafio de Código

     08   Conclusão   1 aula  

- Conclusão

 [ Download da ementa ](https://www.treinaweb.com.br/curso/java-estrutura-de-dados-parte-1/ementa/java-estrutura-de-dados-parte-1.pdf) 

   Depoimentos de alunos

## Utilizada e amada por milhares de desenvolvedores.

  ![](https://d32nikm1p4rl61.cloudfront.net/hKGCCnemqE2BDDpcoBiLqDqFzXzY9qP4.png)   David  Magé / RJ · Java - Estrutura de dados - Parte 1  

 Avaliação: 5 de 5 estrelas.

 “Ótimo curso.”

   ![](https://d32nikm1p4rl61.cloudfront.net/hyTml8jl0FQ6KiwUmao9gSJmtU6eHdnv.png)   Jean  Capitão Poço / PA · Java - Estrutura de dados - Parte 1  

 Avaliação: 5 de 5 estrelas.

 “Adoro programar e ver os resultados do meu produto, ultimamente estou sem prática mas graças essa plataforma de ensino voltei a lembrar de coisas que aprende, quero chegar muito além e ser um ótimo programador e desenvolvedor de sistema. Obrigado gente!!!”

   ![](https://d32nikm1p4rl61.cloudfront.net/egj0pzaVXwzzf9IsueyQPU9NM9MRGZyT.png)   BRENO  Divinópolis / MG · Java - Estrutura de dados - Parte 1  

 Avaliação: 5 de 5 estrelas.

 “Show! Estou gostando muito! Só senti falta de uma apostila, mas nada que venha a atrapalhar, seria somente para futuras consultas mesmo. Obrigado!”

 [ Veja mais opiniões reais ](https://www.treinaweb.com.br/depoimentos) 

## Comece este curso ainda hoje.

 05h51 de vídeo, 31 exercícios, certificado de 18 horas — mais todos os outros cursos e formações da TreinaWeb na mesma assinatura.

 [Quero assinar](https://www.treinaweb.com.br/checkout/pagamento/plano/anual?cupom=TW-SCLIENTE26) 

  Continue aprendendo

## Conteúdos relacionados

- ![](https://d2knvm16wkt3ia.cloudfront.net/assets/svg-icon/java.svg)  Iniciante  

     Curso · 16h

    ###  [ Java - Fundamentos ](https://www.treinaweb.com.br/curso/java-fundamentos "Java - Fundamentos") 

    Ver curso →
- ![](https://d2knvm16wkt3ia.cloudfront.net/assets/svg-icon/javascript.svg)  Iniciante  

     Curso · 22h

    ###  [ JavaScript - Fundamentos ](https://www.treinaweb.com.br/curso/javascript-fundamentos "JavaScript - Fundamentos") 

    Ver curso →
- ![](https://d2knvm16wkt3ia.cloudfront.net/assets/svg-icon/java.svg)  Intermediário  

     Curso · 10h

    ###  [ Java - Fundamentos de JAX-WS e JAX-RS ](https://www.treinaweb.com.br/curso/java-fundamentos-de-jax-ws-e-jax-rs "Java - Fundamentos de JAX-WS e JAX-RS") 

    Ver curso →
- ![](https://d2knvm16wkt3ia.cloudfront.net/assets/svg-icon/java.svg)  Avançado  

     Curso · 14h

    ###  [ Java - Fundamentos de Struts 2 ](https://www.treinaweb.com.br/curso/java-fundamentos-struts2 "Java - Fundamentos de Struts 2") 

    Ver curso →
- ![](https://d2knvm16wkt3ia.cloudfront.net/assets/svg-icon/java.svg)  Intermediário  

     Curso · 14h

    ###  [ Java - Fundamentos de JavaFx ](https://www.treinaweb.com.br/curso/java-fundamentos-de-javafx "Java - Fundamentos de JavaFx") 

    Ver curso →
- ![](https://d2knvm16wkt3ia.cloudfront.net/assets/svg-icon/java.svg)  Intermediário  

     Curso · 12h

    ###  [ Java - Fundamentos para Web ](https://www.treinaweb.com.br/curso/java-fundamentos-para-web "Java - Fundamentos para Web") 

    Ver curso →
- ![](https://d2knvm16wkt3ia.cloudfront.net/assets/svg-icon/java.svg)  Intermediário  

     Curso · 6h

    ###  [ Java - Testes unitários com JUnit 5 ](https://www.treinaweb.com.br/curso/java-testes-unitarios-com-junit-5 "Java - Testes unitários com JUnit 5") 

    Ver curso →
- ![](https://d2knvm16wkt3ia.cloudfront.net/assets/svg-icon/java.svg)  Iniciante  

     Curso · 12h

    ###  [ Java - Collections - Parte 2 ](https://www.treinaweb.com.br/curso/java-collections-parte-2 "Java - Collections - Parte 2") 

    Ver curso →

   Trilhas completas

## Formações que incluem este conteúdo

- Formação  ![](https://d2knvm16wkt3ia.cloudfront.net/assets/svg-icon/java.svg) 

     Back-end

    ###  [ Desenvolvedor Java ](https://www.treinaweb.com.br/formacao/desenvolvedor-java "Desenvolvedor Java") 

    A formação Desenvolvedor Java da TreinaWeb tem como objetivo apresentar o desenvolvimento através do Java e todo o ecossistema para desenvolvimento da Oracle. Nesta formação, são desde tópicos básicos como o paradigma orientado a objetos, a preparação do ambiente de desenvolvimento para o Java através do Eclipse e o controle de versão de código através do Git e do GitHub. Até aspectos mais avançados como acesso a bancos de dados relacionais e o desenvolvimento de aplicações web com o Java.

      27 cursos   83h06 de vídeos

## Um ano de acesso total para você viver de programação.

 Todos os cursos e formações da TreinaWeb numa única assinatura, com professores que atuam no mercado, suporte direto e certificados. Do primeiro `console.log` ao mercado de trabalho.

- **1 ano** de acesso a **todos os cursos**
- Cursos novos **toda semana**
- Suporte **direto com professores**
- Plano de carreira **personalizado**
- **Certificados digitais** inclusos
- **Aplicativos** para Android e iOS, com **acesso offline**

    **Garantia incondicional de satisfação** 

 Teste por 7 dias e, se não fizer sentido para você, devolvemos seu dinheiro.

### Acesso completo a todos os cursos e dezenas de Formações.

 12 meses 

  Economize R$ 840,00  54% OFF 

 de 12x R$ 129,00 por apenas

 12x  R$ 59,00

 sem juros no cartão de crédito ou R$ 599,00 à vista

  Oferta termina em  **15h 39min 31s**

- Acesso imediato e ilimitado durante 1 ano.
- Plano de carreira personalizado.
- Suporte direto com professores.
- E muito mais!

 [Matricule-se agora](https://www.treinaweb.com.br/checkout/pagamento/plano/anual?cupom=TW-SCLIENTE26)

    Ainda tem alguma dúvida?

## Antes de começar, veja o que você precisa saber.

 Não encontrou a sua pergunta aqui? Fale com a nossa equipe antes de decidir — é para isso que ela está lá.

 [Falar com a equipe →](https://www.treinaweb.com.br/contato)    Estou começando do zero. A TreinaWeb é para mim? 

Sim. A plataforma possui conteúdos para quem está dando os primeiros passos em programação, incluindo fundamentos e formações organizadas para ajudar você a avançar progressivamente.

Se você ainda não programa, recomendamos começar pelas bases antes de entrar em conteúdos mais avançados de IA aplicada ao desenvolvimento.

   Já sou desenvolvedor. Vou encontrar conteúdo para mim? 

Sim. Além dos conteúdos fundamentais, a TreinaWeb possui formações, cursos intermediários e avançados, frameworks, arquitetura, infraestrutura e uma formação dedicada à aplicação de IA no desenvolvimento.

   A TreinaWeb tem cursos de Inteligência Artificial para desenvolvedores? 

Sim. A Formação IA para Devs reúne conteúdos sobre ferramentas e conceitos utilizados no desenvolvimento assistido por IA, incluindo GitHub Copilot, Cursor, Claude Code, Gemini CLI, MCP, Prompt Engineering, n8n e outros recursos.

   Preciso saber programar para fazer a Formação IA para Devs? 

A Formação IA para Devs é especialmente indicada para quem já possui conhecimentos de programação.

Se você ainda está começando, pode primeiro desenvolver sua base com os cursos e formações de programação disponíveis na própria TreinaWeb e depois avançar para IA.

   Tenho acesso a todos os cursos? 

Sim. Durante o período da assinatura, você tem acesso aos cursos e formações contemplados pelo plano anual da TreinaWeb.

   Por quanto tempo tenho acesso? 

O plano apresentado nesta página oferece 12 meses de acesso à plataforma.

   Existe uma ordem recomendada para estudar? 

Sim. As formações e planos de carreira ajudam você a organizar o aprendizado e entender quais conteúdos fazem mais sentido para cada etapa.

   Posso tirar dúvidas? 

Sim. A assinatura inclui os canais de suporte disponibilizados pela TreinaWeb para que você possa esclarecer dúvidas relacionadas aos conteúdos estudados.

   Os cursos possuem certificado? 

Sim. Os certificados digitais dos cursos concluídos estão incluídos na assinatura, de acordo com as regras de conclusão da plataforma.

   Posso estudar pelo celular? 

Sim. A TreinaWeb possui aplicativos para Android e iOS e oferece recursos de acesso offline pelo aplicativo.

   A TreinaWeb lança novos cursos? 

Sim. Novos conteúdos são adicionados regularmente à plataforma para acompanhar a evolução das tecnologias e ferramentas utilizadas no desenvolvimento.

   Como funciona a garantia? 

Você possui 7 dias de garantia para conhecer a plataforma. Caso decida que a TreinaWeb não atende às suas expectativas dentro desse período, poderá solicitar o reembolso conforme as condições da garantia.

## Comece hoje a programar com IA ao seu lado.

 [Matricule-se agora](https://www.treinaweb.com.br/checkout/pagamento/plano/anual?cupom=TW-SCLIENTE26) 

   [                ](https://www.treinaweb.com.br)

 Escola online de programação, tecnologia e IA.

- [  ](https://www.facebook.com/TreinaWeb/)
- [  ](https://www.instagram.com/treinaweb/)
- [  ](https://www.youtube.com/user/TreinaWeb)
- [  ](https://twitter.com/treinaweb)
- [  ](https://www.linkedin.com/company/treinaweb)
- [  ](https://github.com/treinaweb)

## Inscreva-se em nossa newsletter

Receba lançamentos, promoções e novidades.

   Seu nome     Seu WhatsApp     Seu melhor e-mail   Inscrever-se 

## Cursos

- [ Base para Devs ](https://www.treinaweb.com.br/categoria/base-para-devs)
- [ Front-end ](https://www.treinaweb.com.br/categoria/desenvolvimento-front-end)
- [ Back-end ](https://www.treinaweb.com.br/categoria/desenvolvimento-back-end)
- [ Mobile ](https://www.treinaweb.com.br/categoria/desenvolvimento-mobile)
- [ Bancos de Dados ](https://www.treinaweb.com.br/categoria/bancos-de-dados)
- [ Cloud ](https://www.treinaweb.com.br/categoria/cloud-computing)
- [ IA ](https://www.treinaweb.com.br/categoria/ia)
- [ E mais ](https://www.treinaweb.com.br/categoria/e-mais)
- [ Ver todos os cursos ](https://www.treinaweb.com.br/cursos)

## Conteúdo

- [ Formações ](https://www.treinaweb.com.br/formacoes)
- [ Projetos práticos ](https://www.treinaweb.com.br/projetos-praticos)
- [ Direto ao ponto ](https://www.treinaweb.com.br/direto-ao-ponto)
- [ Planos ](https://www.treinaweb.com.br#assinatura)
- [ Depoimentos ](https://www.treinaweb.com.br#depoimentos)
- [ Comunidade ](https://www.treinaweb.com.br#comunidade)
- [ Corpo docente ](https://www.treinaweb.com.br#docente)

## A empresa

- [ Sobre a TreinaWeb ](https://www.treinaweb.com.br#sobre)
- [ Perguntas frequentes ](https://www.treinaweb.com.br#faq)
- [ Vantagens de estudar na TreinaWeb ](https://www.treinaweb.com.br/vantagens-de-estudar-na-treinaweb)
- [ Cursos para empresas ](https://www.treinaweb.com.br/empresas)
- [ Sugira um novo curso ](https://www.treinaweb.com.br/sugerir-curso)
- [ Trabalhe conosco ](https://www.treinaweb.com.br/trabalhe-conosco)
- [ Artigos ](https://www.treinaweb.com.br/blog)
- [ Desenvolvedores e agentes ](https://www.treinaweb.com.br/developers)
- [ Contato ](https://www.treinaweb.com.br/contato)
- [ Política de privacidade ](https://www.treinaweb.com.br/politica-de-privacidade)
- [ Termos de uso ](https://www.treinaweb.com.br/termos-de-uso)

## Baixe nosso aplicativo

 [   Disponível na **App Store**  ](https://apps.apple.com/us/app/treinaweb/id1322729447) [   Disponível no **Google Play**  ](https://play.google.com/store/apps/details?id=br.com.treinaweb.mobile) 

  Av. Paulista, 1765, Conj 71 e 72 · Bela Vista · São Paulo · SP · 01311-200   © 2004 – 2026 TreinaWeb Tecnologia LTDA · CNPJ 06.156.637/0001-58
