0% acharam este documento útil (0 voto)
9 visualizações24 páginas

Slides - Aula Ao Vivo 2

O documento aborda estruturas de dados fundamentais em Python, como listas, pilhas e filas, com o objetivo de promover a compreensão de suas aplicações na resolução de problemas computacionais. Os alunos devem ser capazes de implementar essas estruturas e identificar a mais adequada para diferentes contextos. O texto também discute as características e usos práticos de cada estrutura, como gerenciamento de chamadas de função e organização de tarefas em sistemas operacionais.

Enviado por

casefa
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PPTX, PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
9 visualizações24 páginas

Slides - Aula Ao Vivo 2

O documento aborda estruturas de dados fundamentais em Python, como listas, pilhas e filas, com o objetivo de promover a compreensão de suas aplicações na resolução de problemas computacionais. Os alunos devem ser capazes de implementar essas estruturas e identificar a mais adequada para diferentes contextos. O texto também discute as características e usos práticos de cada estrutura, como gerenciamento de chamadas de função e organização de tarefas em sistemas operacionais.

Enviado por

casefa
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PPTX, PDF, TXT ou leia on-line no Scribd

Estrutura de Dados

Me. Carlos Danilo


METAS DE
APRENDIZAGEM
• A aula tem como objetivo apresentar e explorar as estruturas de dados
fundamentais lista, pilha e fila na linguagem Python, promovendo uma
compreensão clara sobre como utilizá-las na resolução de problemas
computacionais de forma lógica, eficiente e organizada.
• Ao final da aula, espera-se que os alunos sejam capazes de criar programas
simples utilizando listas, pilhas e filas, compreendendo suas
particularidades e identificando qual dessas estruturas é mais adequada
para diferentes contextos e tarefas no desenvolvimento de algoritmos.
TÓPICOS DE HOJE

• Implementação de Estrutura de Dados


• Listas
• Pilhas
• Filas
LISTA LIGADA (LISTA
ENCADEADA)
Listas ligadas são constituídas de nós, no qual cada um deles
possui o endereçamento para o próximo nó na lista. Isso
implica que cada nó seja uma estrutura heterogênea, pois
também contém dados que serão utilizados.

Uma lista é um vetor(array) no qual são armazenados vários


elementos, tais elementos poderão estar ou não ordenados,
como também não precisam ser necessariamente valores
numéricos.
LISTA LIGADA (LISTA
ENCADEADA)
A list funciona como um vetor dinâmico, ou seja, é uma
sequência de posições de memória contíguas. Com isso, as
inserções variam conforme a posição em que são feitas:
Inserção no final: [Link](50)
Inserção no início ou no meio:
• precisa deslocar todos os elementos seguintes para abrir
espaço
LISTA LIGADA (LISTA
ENCADEADA)
Na lista ligada, cada elemento (nó) aponta para o próximo. Não
há posições fixas, o que torna algumas inserções mais
vantajosas.
LISTA LIGADA (SIMPLES)
Para que seja possível percorrer todos os elementos da lista,
devemos explicitamente guardar o encadeamento dos
elementos, informar de cada elemento, um ponteiro para o
próximo elemento da lista (RANGEL, 2008).
LISTA LIGADA
(DUPLAMENTE)
LISTA LIGADA
(ORDENADA)
LISTAS LIGADAS

Fonte da imagem:
PILHAS E FILAS
As estruturas de dados pilha e fila são consideradas com lista
lineares, mas com características próprias.

Podemos abstrair o entendimento sobre a estrutura de uma


pilha como se fosse uma pilha de livros, um em cima do outro,
mas se pegarmos os mesmo livros e colocarmos todos um a
frente do outro temos uma estrutura de lista.
FILAS
Segundo Pulga e Rissetti (2009 p. 219):
Conceito de FILA conhecido como first in, first out ou FIFO,
expressão conhecida em português como PEPS ou “primeiro
que entra, primeiro que sai”.

Então, no conceito de fila, os elementos são atendidos, ou


utilizados, sequencialmente na ordem em que são
armazenados.
Filas

Fonte da imagem:
FILAS
Em uma lista linear, algumas das regras que devem ser
seguidas nesse conceito de FIFO são:

• Os novos elementos sempre entram por último, no final da


fila, mesmo se essa estiver ordenada.
• O elemento que é lido será o primeiro que entrou ou o que
ocupa a primeira posição.
• O tempo de espera na lista depende do programa em
execução.
• A lista pode ficar vazia.
Filas

Fonte da imagem:
FILAS

Fonte da imagem:
PILHA
As pilhas são estruturas de dados conhecidas como lista LIFO
(Last In, First Out); em português, significa que o último
elemento a entrar é o primeiro a sair UEPS.

Trata-se de uma lista linear em que todas as operações de


inserção e remoção são feitas por um único extremo,
denominado topo (PUGA; RISSETTI, 2016 p.186)
PILHA
• Os novos elementos sempre entram
por último, no final da pilha, mesmo
se a essa estiver ordenada.
• O elemento que é lido será o último
inserido ou próximo da pilha.
• O tempo de espera na pilha depende
do programa em execução.
• A pilha pode ficar vazia.

Fonte da imagem:
Pilha

Fonte da imagem:
PILHA

Fonte da imagem:
PILHAS E FILAS
No desenvolvimento de software, escolher a estrutura de
dados correta é fundamental para garantir desempenho,
organização e lógica nos processos.

PILHAS

Chamadas de Funções
• Em linguagens de programação, a pilha é usada para gerenciar
chamadas de função
• Cada função chamada é empilhada, e só quando termina é que se
retorna à anterior.
• Importante em recursões, como cálculos de fatorial ou busca em
árvores.
PILHAS E FILAS
Navegadores de Internet (Histórico de Páginas)
•Quando você navega por sites, o navegador empilha cada
página visitada.
•Ao clicar em "Voltar", a página atual é removida do topo
da pilha e você retorna à anterior.
• Uso de pilha para implementar o botão "voltar".

Desfazer/Ações em Softwares
•Programas como editores de texto (Word, Photoshop)
utilizam pilhas para registrar ações.
•Ao clicar em "Desfazer", a última ação feita é removida e
revertida.
• Pilha de ações permite reverter passo a passo.
PILHAS E FILAS
Sistemas de Impressão
•Quando você manda vários documentos para a impressora, eles são
enfileirados.
•O primeiro documento enviado é o primeiro a ser impresso.
• Fila gerencia a ordem justa de impressão.

Atendimento ao Cliente
•Chamadas são colocadas em uma fila de espera.
•Os atendentes vão atendendo na ordem em que chegaram.
• Filas garantem atendimento por ordem de chegada

Processos em Sistemas Operacionais


•Tarefas e processos aguardam em filas para serem executados pela
CPU.
•Alguns sistemas operacionais usam filas com prioridades (fila com
pesos).

Você também pode gostar