estrutura de dados aula 04 - listas estáticas

Post on 12-Apr-2017

262 Views

Category:

Education

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

# Estrutura de Dados #Aula 04 - Listas Estáticas

(Sequencial)Prof. Leinylson Fontinele Pereira

Na aula anterior...

Aula de Revisão de C

Ponteiros

Funções

etc

11:32 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

O que vamos aprender?

Listas Estáticas Sequencial# Propriedades

# Operações fundamentais

11:32 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Vamos começar?

11:32 4 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

11:32

O que é uma Lista?

Estrutura de Dados: Aula 04 - Listas Estáticas

O que é uma Lista?

11:32

Uma lista é uma estrutura que armazena elementos do mesmo tipo de forma alinhada, ou seja, elementos dispostos um após o outro.

Estrutura de Dados: Aula 04 - Listas Estáticas

Exemplos de Listas

11:32 7 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Lista: exemplos

11:32

Coisas a fazer

Compras

Catálogo telefônico

Informações sobre funcionários da empresa

Notas de alunos

Itens de estoque

Cartas de baralho

etc

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

11:32 9 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Qual propriedade é comum a todas estas listas

11:32 10 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Linearidade

Lista: Definição Formal

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Lista Estática (Consecutiva/Sequencial)

11:32

Os nós desta lista são armazenados em endereços sequenciais.

Materializada na forma de um vetor:

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

Lista Estática (Consecutiva/Sequencial)

11:32

Alocação estática O espaço de memória é alocado no momento da compilação

Exige a definição do número máximo de elementos da Lista

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

Operações do TAD Lista

11:32 14 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Operações com Listas

11:32

As propriedades estruturadas da lista, permitem responder a questões como:

Qual é o primeiro elemento da lista?

Qual é o último elemento da lista?

Quais elementos sucedem um determinado elemento?

Quantos elementos existem na lista?

Como inserir um elemento na lista?

Como eliminar um elemento da lista?

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

Operações com Listas

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Criação de uma Lista

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

É a primeira operação a ser executada;

Aloca as variáveis necessárias para a definição da lista;

Inicializa as variáveis de controle;

Por fim, as demais operações ficam habilitadas.

Operações com Listas

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Definindo uma Lista

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

11:32 20 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Tamanho

Operações: Tamanho da Lista

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

11:32 22 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Como faço para saber se alista esta vazia

Operações: Tamanho da Lista

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

11:32 24 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Inserção

Operações: Inserção

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Inserções podem ser:

No início da lista;

No final da lista;

Em alguma posição dentro da lista.

Operações: Inserção

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Operações: Inserção

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Operações: Inserção

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Problema:

Nas estruturas contíguas é a necessário definir seu tamanho a priori, podendo levar a:

• um superdimensionamento (desperdiço de memória) ou

• um subdimensionamento (impossibilidade de inserir mais elementos).

11:32 29 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Busca

Operações: Busca

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Operações: Busca

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

11:32 32 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

ElementoEm

Operações: ElementoEm

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

11:32 34 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Remoção

Operações: Remoção

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Operações: Remoção

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Operações: Remoção

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Concluindo...

11:32 38 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Lista Estática Sequencial

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

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.

11:32 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

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

11:32

Material baseado nas aulas de:

Estruturas de Dados, Prof.ª Roseli A. F. Romero

Listas: Conceito e estáticas, Prof: Sergio Souza Costa

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

Na próxima aula veremos...

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

11:32 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Alguma Dúvida?

11:32

Até a próxima aula...

leinylson@gmail.com

Prática

11:32 44 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

As aulas práticas foram baseadas no material de

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

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

Lista Estática Sequencial

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

ListaSequencial.h

Os protótipos das funções

O tipo de dado armazenado na lista

O ponteiro lista

Tamanho do vetor usado na lista

Lista Estática Sequencial

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

ListaSequencial.c

O tipo de dados lista

Implementar as suas funções

11:32 47 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Definindo a Lista

Definindo a Lista

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

11:32 49 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Criando a Lista

Criando a Lista

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Criando a Lista

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

11:32 52 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Destruindo a Lista

Destruindo a Lista

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

11:32 54 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Obtendo o Tamanho

Obtendo o Tamanho da Lista

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Obtendo o Tamanho da Lista

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

11:32 57 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Lista Cheia?

Verificando se a Lista está Cheia

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Verificando se a Lista está Cheia

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

11:32 60 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Lista Vazia?

Verificando se a Lista está Vazia

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Verificando se a Lista está Vazia

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

11:32 63 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Inserção na Lista

Lista Estática Sequencial

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Início ->

Fim ->

Meio ->

Inserindo numa Lista Vazia

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Inserindo numa Lista Vazia

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

11:32 67 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Inserindo no Final

Inserindo Elementos no Final da Lista

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Inserindo Elementos no Final da Lista

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

11:32 70 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Inserindo no Início

Inserindo Elementos no Início da Lista

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Inserindo Elementos no Início da Lista

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

11:32 73 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Inserindo no Meio

Inserindo Elementos de Forma Ordenada da Lista

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Inserindo Elementos de Forma Ordenada da Lista

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

11:32 76 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Remoção na Lista

Removendo de uma Lista Vazia

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

A remoção sempre remove um elemento específico da lista, o qual pode estar noinício, no meio ou no fim.

Cuidado: Não se pode remover de uma lista vazia!!

11:32 78 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Removendo do Final

Removendo Elementos do Final da Lista

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Removendo Elementos do Final da Lista

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

11:32 81 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Removendo do Início

Removendo Elementos do Início da Lista

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Removendo Elementos do Início da Lista

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

11:32 84 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Removendo do Meio

Removendo Elementos do Meio da Lista

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

11:32 86 Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Realizando Consulta na Lista Estática

Realizando Consulta na Lista Estática

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Existem duas maneiras de consulta um elemento de uma lista: Pela posição: acesso direto

Pelo conteúdo: necessidade de busca

Consulta pela Posição

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

Consulta pelo Conteúdo

11:32Estrutura de Dados: Aula 04 - Lista Estática Sequencial

top related