- Aula 01 - Introdução a Estrutura de Dados e Algoritmos✅
- Aula 02 -Vetores e Arrays: Introdução✅
- Aula 03 - Adicionar elemento no final do vetor✅
- Aula 04 -Verificar tamanho e imprimir elementos do vetor✅
- Aula 05 -Obter elemento de uma posição✅
- Aula 06 - Verificar se elemento existe no vetor (busca sequencial)✅
- Aula 07 -Adicionar elemento em qualquer posição✅
- Aula 08 -Aumentar capacidade do vetor✅
- Aula 09 -Remover elemento do vetor✅
- Aula 10 -Generalizar o tipo do vetor✅
- Aula 11 -Configurar o tipo do vetor dinamicamente (Generics)✅
- Aula 12 -API Java: ArrayList✅
- Exer 01 método contém✅
- Exer 02 método último índice✅
- Exer 03 método remove elemento✅
- Exer 04 método obtém (get)✅
- Exer 05 método remover todos elementos (clear)✅
- Exer 06 Contatos – Lista✅
- Exer 07 Contatos – ArrayList✅
- Aula 13-Pilhas: Introdução✅
- Aula 14- Empilhar elemento (push)✅
- Aula 15 -Verificar se pilha está vazia✅
- Aula 16 -Espiar/Verificar elemento do topo (peek)✅
- Aula 17 -Desempilhar elemento (pop)✅
- Aula 18 -API Java: Stack✅
- Exerc 01 Empilha e desempilha✅
- Exerc 02 Pilhas par ou ímpar✅
- Exerc 03 Pilha de Livros✅
- Exerc 04 Stack de Livros✅
- Exerc 05 Desafio do Palíndromo✅
- Exerc 06 Desafio dos símbolos balanceados✅
- Exerc 07 Desafio conversão decimal-binário✅
- Exerc 08 Desafio Torre de Hanoi✅
- Aula 19 Filas: Introdução✅
- Aula 20 Enfileirar (adicionar) elemento (enqueue)✅
- Aula 21 Espiar/Verificar elemento início da fila (peek)✅
- Aula 22 Desenfileirar (remover) elemento da fila (dequeue)✅
- Aula 23 API Java: Queue✅
- Aula 24 Filas com Prioridade✅
- Aula 25 API Java: PriorityQueue✅
- Exerc 01 Fila de documentos impressos✅
- Exerc 02 Distribuição de senhas✅
- Exerc 03 Sistemas de senhas de um pronto Socorro✅
- Exerc 04 Brincadeira Batata Quente✅
- Aula 25 Listas encadeada (Lista Ligada)✅
- Aula 26 Listas encadeada 02 tamanho da lista✅
Objetos StringBuilder são como objetos String, exceto que eles podem ser modificados . Internamente, esses objetos são tratados como matrizes de comprimento variável que contêm uma sequência de caracteres. A qualquer momento, o comprimento e o conteúdo da sequência podem ser alterados por meio de invocações de métodos.
** ArrayList aparece com maior frequência.**
Ex: ArrayList aulas = new ArrayList<>();
-
Adicionando itens (em sequencia) aulas.add(aula1);
-
Removendo elementos aulas.remove(0);
- Percorrendo uma lista
for (String aula : aulas) {
System.out.println("Aula: " + aula);
}
-
Acessando elementos(o método utilizado é o get) String primeiraAula = aulas.get(0);
-
Usando o mesmo método para percorrer a lista toda for (int i = 0; i < aulas.size(); i++) {
System.out.println("aula : " + aulas.get(i));
} -
Forma de percorrer elementos java 08
aulas.forEach(aula -> {
System.out.println("Percorrendo:");
System.out.println("Aula " + aula);
});
-
Ordenando a lista
Collections.sort(aulas);
A pilha possui um comportamento especial chamdo de LIFO(LAST IN FIRST OUT) ultimo elemento ao entrar , primeiro elemento a sair
A fila possui um comportamento especial chamdo de FIFO(FIRST IN FIRST OUT) primeiro elemento a entrar , primeiro elemento a sair
- Estrutura Dinâmica
- Cada elemento é um nó (célula)
- Ponteiros
- Referencia ao primeiro elemento da lista
- Cada nó faz referencia ao próximo elemento
- Array e Vector são as mesmas coisas o que diferencia são as dimensões;
- Interface é um contrato que você pode esperar comportamentos de uma funcionalidade;
- uma classe pode implementar varias interfaces mas so pode herdar uma classe abstrata
https://blog.mandic.com.br/artigos/java-garbage-collection-melhores-praticas-tutoriais-e-muito-mais/
- Boas práticas:, pesquisar
Estrutura de Dados com Java - Loiane Groner
Pilhas Fundamentos e Implementações da Estrutura em Java - DEVMEDIA