Você está na página 1de 26

Universidade Eduardo Mondlane

Faculdade de Engenharia
Departamento de Engenharia Electrotecnica
Curso de Engenharia Informática

Disciplina: Estrutura de Dados e Algoritmos

Tema: Lista Encadeada

Discentes: Docentes:
Bata, Isidro Dr. Covele, Alfredo
Manjate, Isaías Naftal Dra. Rugntah, Bhavika
Matimbe, José
Muchanga, Zefanias Zeferino
Introduçã
o 01
Decrição do projecto e seus
objetivos
Introdução

A programação de computadores é uma área da ciência de computação e ela


trabalha essencialmente com o estudo de estruturas de dados e a sua manipulação
para a resolução de
problemas em diversos domínios do conhecimento.

As estruturas de dados são uma representação de entidades e objetos do mundo


real.
Introdução(cont.)

O presente trabalho visa implementar tipo abstrato de dados a Estrutura de Dados


linear do tipo Lista, para atender a necessidades específicas.

Estruturas de dados permitem nos otimizar os nossos algoritmos tornando os mais


responsivos, isto é, organizados permitindo maior rapidez no acesso aos dados.
Objectivos
● Geral
Desenvolver uma estrutura de dados e algoritmos.

● Especifico
1. Descrever a Estrutura de Dados Lista Encadeada;
2. Criar uma Lista encadeada;
3. Criar CRUD de elementos na Lista.
Estrutura de
Dados 02
Entender conceitos fundamentais
da Estrutura de Dados
Estrutura de Dados

É o ramo da computação que estuda os diversos mecanismos de organização de


dados para atender aos diferentes requisitos de processamento.

As estruturas de dados representam de modo simbólico entidades e objetos do


mundo real e definem a parte estática de um algoritmo.
Classifação de Estrutura de
Dados
As Estruturas de dados classificam-se se em dois(2) tipos que são:
 Lineares
Organizam os dados de forma sequenciada como é o caso das listas, pilhas
e filas.
 Não-lineares
Organizam os dados de forma não sequenciada como é o caso dos grafos
e arvores.
Classifação de Estrutura de
Dados(cont.)

As estruturas de dados também podem classificadas segundo sua forma de


implementação como estáticas e dinâmicas.

Estáticas consistem em estruturas e tamanhos fixos e permanentes.

Dinâmicas consistem capacidade de memoria não fixa, diminuindo ou


expandindo conforme a necessidade e requisitos.
Lista
Encadeada 03
Entender conceitos fundamentais
da Lista Encadeada
Lista Encadeada

● É uma estrutura de dados do tipo container, ou seja, serve para


armazenar elementos em uma certa ordem.
● É um conjunto de elementos, em que cada elemento aponta para o
proximo elemento, denominado ponteiro, e o ponteiro é responsavel
por armazenar o endereço do elemento.
Lista Encadeada(cont)
Lista Encadeada(cont.)
Vantagens
 A inserção ou remoção de um elemento na lista não implica a
mudança de lugar de outros elementos;
 Não é necessário definir, no momento da criação da lista, o número
máximo de elementos que esta poderá ter. Ou seja, é possível alocar
memória "dinamicamente", apenas para o número de nós
necessários
Lista Encadeada(cont.)

Desvantagens
 A manipulação torna-se mais "perigosa" uma vez que, se o
encadeamento (ligação) entre elementos da lista for mal feito, toda a
lista pode ser perdida;
 Para aceder ao elemento na posição n da lista, deve-se percorrer

todos os elementos (n - 1) anteriores.


Lista Encadeada(cont.)

Níveis de Complexidade

Inserção:

Inicio: O(1)

Meio: O(1) se for inserção no inicio, O(n)

Fim: O(n)
Lista Encadeada(cont.)

Níveis de Complexidade

Remoção:

Inicio: O(1)

Meio: O(1) se for remoçao no inicio, O(n)

Fim: O(1) se for remoçao no inicio, O(n)


Lista Encadeada(cont.)
Níveis de Complexidade

Atualização:

O(1) se for no inicio, O(n)

Pesquisa:

O(1) se for no inicio, O(n)


Porque da Lista Encadeada?

Permitem fazer operações como inserção, remoção, visualização e actualização,


usando alocação dinâmica e na remoção tanto na inserção não precisa deslocar
elementos pois a implementação usando nos, permite fazer isso.
Implementação
04
Implementação da Estrutura
de dados em java.
Implementação da Estrutura de dados
Implementação da ED (cont.)
Implementação da ED (cont.)
Implementação da ED (cont.)
Implementação da ED (cont.)
Conclusão 05
Apresentação das
dificuldades, Limitações e
melhorias
Conclusão
As estruturas de dados e algoritmos são um campo muito forte na área de
ciência de computação, pois simbolizam o centro da área da computação.
A criação de uma lista encadeada com implementação de nos, é baseada em
ponteiros, e o elemento armazena o endereço do ponteiro e o objecto. A
CRUD numa lista é a manipulação dos elementos contidos na lista, através
dos seus endereços esses que são possíveis acessar com ponteiros.
A lista encadeada é usada em casos de inserção e remoção constantes.

Algumas dificuldades:

• No decorrer da pesquisa e desenvolvimento do nosso trabalho algumas


dificuldades foram enfrentadas generalização das classes e comparar
objectos.

Você também pode gostar