A2 TADS4 Estrutura De Dados Teleaula 5 Tema 5 Impressao

1198 palavras 5 páginas
10/09/2014

Estrutura de Dados
Tema 5: Listas.

O que é uma lista dinâmica
Um conjunto de itens dispostos linearmente, onde a inserção e a remoção de itens podem acontecer em qualquer ponto.
10C54

D

início
E

79C32

NULL

10C54

79C32

Características dinâmica básicas de uma lista

Possui um ponteiro externo que indica o primeiro elemento da lista;
Cada elemento da lista contém os dados necessários (número, letra, nome, cadastros, etc) e um ponteiro que indica a localização do próximo elemento;
Não há limitação para a quantidade de elementos;

1

10/09/2014

Analisando uma lista graficamente
Inserir os elementos G, H, A em uma lista

Analisando uma lista graficamente
Remover os elementos D, X e M da lista
X

AC432

D

E

M

10C54

79C32

1928D

NULL

AC432

10C54

79C32

1928D

início

Lista duplamente encadeada
X

AC432

D

E

M

NULL

AC432

10C54

79C32

10C54

79C32

AC432

10C54

1928D
79C32

NULL
1928D

início

2

10/09/2014

Lista como um Tipo de Dado Abstrato
Características:
Conjunto de elementos;
Início para indicar o 1º elemento inserido
Cada elemento deve indicar o seu sucessor
Em lista duplamente encadeada, cada elemento deve indicar o seu antecessor Lista como um Tipo de Dado Abstrato
Operações:
Inserir novo elemento
Inserir novo elemento
Inserir novo elemento
Remover elemento do
Remover elemento do
Remover elemento do
Verificar se está vazia
Mostrar elementos

no início no fim no meio início fim meio Criando uma lista encadeada simples struct listaSimples
{ int el; struct listaSimples *prox;
};

3

10/09/2014

Criando uma encadeada

lista

duplamente

struct listaDupla
{ int el; struct listaDupla *ant; struct listaDupla *prox;
};

Continuando
Tema 5: Listas.

Usando uma lista encadeada simples para cadastrar letras em ordem alfabética #include <stdio.h>
#include <stdlib.h> struct lista
{ char letra; struct lista *prox;
};

4

10/09/2014

int empty (lista *l) { if (l==NULL) return true; else return false;
}

void

Relacionados