3. Introdução
● Estudar algoritmos e estruturas de dados envolve algoritmos que
manipulam dados organizados em memória de maneira mais sofisticada
do que as simples variáveis básicas que foram estudadas.
3
4. Introdução
● É algo mais ou menos parecido como manter um guarda-roupas
organizado no lugar de um monte de coisas atiradas no meio do quarto
de qualquer jeito.
4
5. Listas (Arrays)
● Certamente, você já esteve em um edifício no qual todas as unidades
existentes são comerciais. Para facilitar o entendimento deste novo
conteúdo, imagine um edifício comercial no qual, em cada andar, existe
uma empresa fictícia diferente.
5
6. Listas (Arrays)
● Em Python, poderíamos representar esse edifício utilizando uma
estrutura de dados chamada lista, cujos elementos são organizados de
forma linear.
6
7. Listas (Arrays)
● Os elementos de uma lista podem ser de diversos tipos, como os
primitivos (int, float, string e lógico) ou os mais complexos como listas,
dicionários, tuplas e objetos.
● As listas são formadas por uma sequência de elementos separados por
vírgulas e envolvidos por um par de colchetes.
7
11. Listas (Arrays)
● Incluindo elementos
<lista>.append(<elemento>)
11
Insere ao final da
lista
upper(): transforma em maiúscula
lower(): transforma em minúsculo
12. Listas (Arrays)
● Incluindo elementos
<lista>.insert(<índice>, <elemento>)
12
Insere em uma
posição específica
13. Listas (Arrays)
● Alterando elementos
○ Para alterar o valor de um item em específico, utilizar o índice.
13
16. Listas (Arrays)
● Removendo elementos
<lista>.remove(<elemento>)
Remove o elemento especificado
<lista>.pop(<indice>)
Remove o elemento da posição especificada
del <lista>[<índice>]
Remove o elemento da posição especificada ou destrói a variável do tipo lista.
16
20. ● Outras funções
○ <lista>.count(<elemento>) : conta a quantidade de ocorrências de um determinado
elemento na lista.
○ len(<lista>) : retorna o tamanho da lista.
○ min(<lista>) : retorna o menor elemento de uma lista.
○ max(<lista>) : retorna o maior elemento de uma lista.
○ sum(<lista>) : retorna a soma dos elementos de uma lista.
20
Listas (Arrays)
21. ● Outras funções
○ <lista>.index(<elemento>) : retorna o índice em que se encontra a primeira ocorrência
de um elemento informado.
○ Mas se o elemento não existir?? Erro!
○ Recomenda-se verificar antes se o elemento está na lista.
if elemento in <lista>:
….
21
Listas (Arrays)
22. ● Loops com listas
22
Listas (Arrays)
Exibe todos os itens da lista, um a um.
Exibe todos os itens da lista, um a um, mas
utilizando o índice.
24. Exercício
24
● Os professores de Educação Física estão organizando uma seletiva para
montar a equipe de natação. Para isso, eles convocaram os 7 melhores
tempos da última competição e marcaram o tempo de cada um dos
nadadores, na prova dos 25 metros, estilo nado livre. Considerando que
não houve tempos iguais, construa um programa que leia o nome e o
tempo (em segundos) de cada atleta e, em seguida, gere o seguinte
relatório:
○ nadador com o melhor tempo;
○ nadador com o pior desempenho;
○ tempo médio dos nadadores.
26. 26
Listas (Arrays)
● Observamos até agora que as listas apresentam uma estrutura linear de
valores acessíveis por um índice.
● São utilizados para dados mais simples.
● Tem como ser mais complexo? Mais robusto?
27. 27
Listas (Arrays)
● Listas aninhadas (ou bidimensionais, ou multidimensionais)
○ Uma lista aninhada consiste na existência de uma lista como sendo elemento de outra
lista.
familia = [“João Nascimento”, [“João Vitor”, “Maria Clara”]]
28. 28
Listas (Arrays)
● Listas aninhadas (ou bidimensionais, ou multidimensionais)
○ São estruturas que organizam elementos em linhas e colunas, formando uma grade
retangular.
○ Cada elemento é acessado por meio de dois índices: um para a linha e outro para a
coluna.