estrutura de dados - aula 10 - listas circulares e lista com nó descritor

88
# Estrutura de Dados # Aula 10 - Listas Circulares e Lista com Nó Descritor Prof. Leinylson Fontinele Pereira

Upload: leinylson-fontinele

Post on 16-Apr-2017

170 views

Category:

Education


2 download

TRANSCRIPT

# Estrutura de Dados #Aula 10 - Listas Circulares e

Lista com Nó DescritorProf. Leinylson Fontinele Pereira

Na aula anterior...

Aula de Revisão de C

Ponteiros

Funções

etc

16:37 Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

O que vamos aprender?

Listas Estáticas Sequencial# Propriedades

# Operações fundamentais

16:37 Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Vamos começar?

16:37 4 Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Lista Circular

16:37Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Listas Circulares

16:37Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

São listas encadeadas cujo fim aponta para o seu início, formando um círculo quepermite uma trajetória contínua na lista. Podem ser:

Singularmente encadeadas

Duplamente encadeadas

Lista Circular Simplesmente Encadeada

16:37Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Possui a mesma estrutura de uma lista simplesmente encadeada

Porem o último item da lista aponta para o primeiro item da lista

A estrutura de um nó de uma lista circular permanece a mesma.Dependerá apenas se o encadeamento da lista é duplo ou singular.

O que modifica é que não há mais necessidade de dois ponteiros paraindicar o início e o fim da lista.

Como evitar loops?

Basta marcar um nó da lista para evitar loops.

Lista com Nó Descritor

16:37Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Trata-se de uma variação da Lista Dinâmica

Pode ser usada em listas simples, duplamenteencadeada ou circular

Usa um nó especial chamado de descritor paraarmazenar diversas informações sobre a lista

Lista com Nó Descritor

16:37Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

O nó descritor substitui o ponteiro para ponteiroque indica o início da lista

Ele permite armazenar informações como:Ponteiro para o início da lista

Ponteiro para o final da lista

Tamanho da lista

Lista com Nó Descritor

16:37Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Concluindo...

16:37 11 Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Listas heterogêneas

16:37

A representação da informação por um ponteiropermite construir listas heterogêneas, isto é, listas emque as informações armazenadas diferem de nó para nó

Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Listas heterogêneas

16:37Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Listas heterogêneas

16:37Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Listas heterogêneas

16:37Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Lista Homogênea de Objetos Heterogêneos

16:37Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Lista Homogênea de Objetos Heterogêneos

16:37Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Função para a criação de um nó

16:37Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Nesta aula aprendemos... Estrutura de dados lista é uma das mais

importantes e fundamentais.

Conceito chave da lista é a linearidade, podemos falar em primeiro, segundo ....

Pode ser codificada usando estruturas contíguas e encadeadas

Estruturas contíguas o tamanho é dado a priori.

16:37 Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Material: https://sites.google.com/site/leinylsonuespi

16:37

Material baseado nas aulas de:

Listas Encadeadas, Prof. Me. Claudio Benossi

Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Na próxima aula veremos...

Listas Estáticas Sequenciais# Prática de laboratório

16:37 Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Alguma Dúvida?

16:37

Até a próxima aula...

[email protected]

Prática

16:37 23

As aulas práticas foram baseadas no material de

Linguagem C Descomplicada , Dr. André R. Backes.

Disponível em: https://programacaodescomplicada.wordpress.com/

Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Lista Circular

16:37

ListaDinEncadCirc.h

Os protótipos das funções

O tipo de dado armazenado na lista

O ponteiro lista

Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Lista Circular

16:37

ListaDinEncadCirc.c

O tipo de dados lista

Implementar as suas funções

Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

16:37 26

Definindo a Lista

Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Definindo a Lista

16:37Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Definindo a Lista

16:37Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

16:37 29 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Criando a Lista

Criando a Lista

16:37Estrutura de Dados: Aula 04 - Lista Estática Sequencial

16:37 31 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Destruindo a Lista

Destruindo a Lista

16:37Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Destruindo a Lista

16:37Estrutura de Dados: Aula 04 - Lista Estática Sequencial

16:37 34 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Obtendo o Tamanho

Obtendo o Tamanho da Lista

16:37Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Obtendo o Tamanho da Lista

16:37Estrutura de Dados: Aula 04 - Lista Estática Sequencial

16:37 37 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Lista Cheia?

Verificando se a Lista está Cheia

16:37Estrutura de Dados: Aula 04 - Lista Estática Sequencial

16:37 39 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Lista Vazia?

Verificando se a Lista está Vazia

16:37Estrutura de Dados: Aula 04 - Lista Estática Sequencial

16:37 41 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Inserção na Lista

Inserindo numa Lista Vazia

16:37Estrutura de Dados: Aula 04 - Lista Estática Sequencial

16:37 43 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Inserindo no Início

Inserindo Elementos no Início da Lista

16:37Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Inserindo Elementos no Início da Lista

16:37Estrutura de Dados: Aula 04 - Lista Estática Sequencial

16:37 46 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Inserindo no Final

Inserindo Elementos no Final da Lista

16:37Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Inserindo Elementos no Final da Lista

16:37Estrutura de Dados: Aula 04 - Lista Estática Sequencial

16:37 49 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Inserindo no Meio

Inserindo Elementos de Forma Ordenada da Lista

16:37Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Inserindo Elementos de Forma Ordenada da Lista

16:37Estrutura de Dados: Aula 04 - Lista Estática Sequencial

16:37 52 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Remoção na Lista

Removendo de uma Lista Vazia

16:37Estrutura de Dados: Aula 04 - Lista Estática Sequencial

16:37 54 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Removendo do Início

Removendo Elementos do Início da Lista

16:37Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Removendo Elementos do Início da Lista

16:37Estrutura de Dados: Aula 04 - Lista Estática Sequencial

16:37 57 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Removendo do Final

Removendo Elementos do Final da Lista

16:37Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Removendo Elementos do Final da Lista

16:37Estrutura de Dados: Aula 04 - Lista Estática Sequencial

16:37 60 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Removendo do Meio

Removendo Elementos do Meio da Lista

16:37Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Removendo Elementos do Meio da Lista

16:37Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Removendo Elementos do Meio da Lista

16:37Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Lista Dinâmica com Descritor

16:37

ListaDinEncadDesc.h

Os protótipos das funções

O tipo de dado armazenado na lista

O ponteiro lista

Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Lista Dinâmica com Descritor

16:37

ListaDinEncadDesc.c

O tipo de dados lista

O tipo de dados descritor

Implementar as suas funções

Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

16:37 70

Definindo a Lista

Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Definindo a Lista

16:37Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

16:37 72

Criando a Lista

Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Criando a Lista

16:37Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

16:37 74

Destruindo a Lista

Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Destruindo a Lista

16:37Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

16:37 76

Tamanho da Lista

Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Tamanho da Lista

16:37Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

16:37 78

Inserindo da Lista

Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Inserindo na Lista Vazia

16:37Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

16:37 80

Inserindo no Início da Lista

Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Inserindo no Início

16:37Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Inserindo no Início

16:37Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

16:37 83

Inserindo no Final da Lista

Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Inserindo no Final

16:37Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Inserindo no Final

16:37Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

16:37 86

Removendo da Lista

Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Removendo da Lista Vazia

16:37Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

16:37 88

Removendo do Início

Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Removendo do Início

16:37Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Removendo do Início

16:37Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

16:37 91

Removendo do Final

Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor

Removendo do Final

16:37Estrutura de Dados: Aula 10 - Listas Circulares e Lista com Nó Descritor