Linguagem de Programação: Estruturas de Dados em Python
Linguagem de Programação: Estruturas de Dados em Python
Linguagem de Programação: Estruturas de Dados em Python
Programação
Estruturas de dados em Python
• Estrutura de dados
• Algoritmos de busca
• Algoritmos de ordenação
Linguagem de
programação:
Estrutura de dados
em Python
Estrutura de dados em Python
Objetos do tipo sequência
Para que essa transformação seja feita, a função map() exige que
sejam passados dois parâmetros: a função e o objeto iterável.
Estrutura de dados em Python
Por sua vez, nas tuplas isso não é possível, uma vez que são objetos
imutáveis.
Estrutura de dados em Python
Em Python, as tuplas podem ser construídas de três maneiras:
Usando um par de parênteses para denotar uma tupla vazia:
tupla1 = ()
Usando um par de parênteses e elementos separados por vírgulas:
tupla2 = ('a', 'b', 'c')
Usando o construtor de tipo:
tuple()
Estrutura de dados em Python
“Não vi diferença nenhuma entre usar lista e usar tupla".
Em alguns casos, mais de uma estrutura realmente pode resolver o problema, mas em outros não.
Como a tupla é imutável, sua utilização ocorre em casos nos quais a ordem dos elementos é
importante e não pode ser alterada, já que o objeto tuple garante essa característica. A função
enumerate(), que normalmente usamos nas estruturas de repetição, retorna uma tupla cujo
primeiro elemento é sempre o índice da posição e cujo segundo elemento é o valor em si.
Esse objeto pode ser uma lista, uma tupla ou até mesmo uma string
(que é um tipo de sequência).
Estrutura de dados em Python
Suponha que tenhamos uma lista com 1024 elementos. Na primeira iteração
do loop, ao encontrar o meio e excluir uma parte, a lista a ser buscada já é
diminuída para 512. Na segunda iteração, novamente ao encontrar o meio e
excluir uma parte, restam 256 elementos. Na terceira iteração, restam 128.
Na quarta, restam 64. Na quinta, restam 32. Na sexta, restam 16. Na sétima
8. Na oitava 4. Na nona 2. Na décima iteração resta apenas 1 elemento. Ou
seja, para 1024 elementos, no pior caso, o loop será executado apenas 10
vezes, diferentemente da busca linear, na qual a iteração aconteceria 1024
vezes.
Algoritmos de busca
Selection sort
Fonte: w3resource.com.
Algoritmos de Ordenação
Selection sort
Iteração 1: seleciona o valor na posição 0 e o compara com seu vizinho – se for menor,
há troca; se não for, seleciona o próximo e compara, repetindo o processo.
Iteração 2: seleciona o valor na posição 0 e compara ele com seu vizinho, se for menor
troca, senão seleciona o próximo e compara, repetindo o processo.
Fonte: w3resource.com.
Algoritmos de Ordenação
Bubble sort
Fonte: micro.medium.
Recapitulando
Recapitulando
• Estrutura de dados em Python
• Algoritmos de busca
• Algoritmos de Ordenação