Pular para o conteúdo
Publicidade

Estruturas de Dados Simplificadas em Python

Estruturas de Dados Simplificadas

As estruturas de dados são fundamentais em qualquer linguagem de programação, pois permitem organizar e acessar dados de forma eficiente. Em Python, várias estruturas de dados facilitam diferentes operações e atendem a diversas necessidades. Este artigo explora as principais estruturas de dados em Python, suas características e exemplos de uso, tornando o aprendizado mais acessível e prático.


Listas

O Que São Listas?

As listas em Python são coleções ordenadas de itens que podem conter diversos tipos de dados. Elas permitem adição, remoção e modificação de elementos de forma flexível.

Características

  • Mutável: Itens podem ser alterados após a criação.
  • Indexada: Elementos podem ser acessados por índices numéricos.
  • Dinâmica: O tamanho pode ser alterado.

Exemplo de Uso

pythonCopiar códigocompras = ["maçã", "banana", "cenoura"]
compras.append("detergente")
print(compras)  # Saída: ['maçã', 'banana', 'cenoura', 'detergente']

Dicionários

O Que São Dicionários?

Os dicionários em Python armazenam pares de chave-valor, permitindo acesso rápido aos valores associados a uma chave específica.

Potencialize suas análises com o Power BI

Características

  • Mutável: Chaves e valores podem ser alterados.
  • Não Ordenado: A ordem dos itens não é garantida.
  • Chaves Únicas: Cada chave é única dentro do dicionário.

Exemplo de Uso

pythonCopiar códigocontatos = {"João": "1234-5678", "Maria": "8765-4321"}
contatos["Pedro"] = "1111-2222"
print(contatos)  # Saída: {'João': '1234-5678', 'Maria': '8765-4321', 'Pedro': '1111-2222'}

Tuplas

O Que São Tuplas?

Tuplas são semelhantes a listas, mas são imutáveis, o que significa que não podem ser alteradas após a criação. Elas são ideais para armazenar dados que não devem mudar.

Características

  • Imutável: Os elementos não podem ser alterados.
  • Indexada: Elementos acessados por índices.
  • Fixa: O tamanho é definido na criação.

Exemplo de Uso

pythonCopiar códigocoordenadas = (10, 20)
print(coordenadas)  # Saída: (10, 20)

Conjuntos

O Que São Conjuntos?

Conjuntos são coleções não ordenadas de itens únicos. Eles são úteis para operações matemáticas como união, interseção e diferença.

Características

  • Mutável: Itens podem ser adicionados ou removidos.
  • Não Indexado: Elementos não podem ser acessados por índices.
  • Itens Únicos: Cada item aparece apenas uma vez.

Exemplo de Uso

pythonCopiar códigofrutas = {"maçã", "banana", "laranja"}
frutas.add("uva")
print(frutas)  # Saída: {'maçã', 'banana', 'laranja', 'uva'}

Pilhas

O Que São Pilhas?

Pilhas seguem o princípio LIFO (Last In, First Out), onde o último item adicionado é o primeiro a ser removido. São usadas para recuperação ordenada de dados.

Características

  • Mutável: Itens podem ser adicionados ou removidos.
  • LIFO: O último item adicionado é o primeiro a sair.

Exemplo de Uso

pythonCopiar códigopilha = []
pilha.append(1)
pilha.append(2)
print(pilha.pop())  # Saída: 2

Listas Encadeadas

O Que São Listas Encadeadas?

Listas encadeadas consistem em nós onde cada nó contém dados e um ponteiro para o próximo nó na sequência. Elas são eficientes para inserções e exclusões.

Características

  • Mutável: Nós podem ser adicionados ou removidos.
  • Ponteiros: Cada nó aponta para o próximo nó.
  • Não Indexada: Acessar elementos requer travessia sequencial.

Exemplo de Uso

pythonCopiar códigoclass Node:
    def __init__(self, data):
        self.data = data
        self.next = None

class LinkedList:
    def __init__(self):
        self.head = None

lista = LinkedList()
lista.head = Node(1)
segundo = Node(2)
terceiro = Node(3)

lista.head.next = segundo
segundo.next = terceiro

# Travessia
atual = lista.head
while atual:
    print(atual.data)  # Saída: 1 2 3
    atual = atual.next

Estruturas de Dados Simplificadas em Python
Estruturas de Dados Simplificadas em Python

Listas

As listas em Python são coleções ordenadas de itens que podem conter diversos tipos de dados. Elas permitem adição, remoção e modificação de elementos de forma flexível.

Potencialize suas análises com o Power BI
  • Mutável
  • Indexada
  • Dinâmica
compras = ["maçã", "banana", "cenoura"]
compras.append("detergente")
print(compras)  # Saída: ['maçã', 'banana', 'cenoura', 'detergente']

Dicionários

Os dicionários em Python armazenam pares de chave-valor, permitindo acesso rápido aos valores associados a uma chave específica.

  • Mutável
  • Não Ordenado
  • Chaves Únicas
contatos = {"João": "1234-5678", "Maria": "8765-4321"}
contatos["Pedro"] = "1111-2222"
print(contatos)  # Saída: {'João': '1234-5678', 'Maria': '8765-4321', 'Pedro': '1111-2222'}

Tuplas

Tuplas são semelhantes a listas, mas são imutáveis, o que significa que não podem ser alteradas após a criação. Elas são ideais para armazenar dados que não devem mudar.

  • Imutável
  • Indexada
  • Fixa
coordenadas = (10, 20)
print(coordenadas)  # Saída: (10, 20)

Conjuntos

Conjuntos são coleções não ordenadas de itens únicos. Eles são úteis para operações matemáticas como união, interseção e diferença.

  • Mutável
  • Não Indexado
  • Itens Únicos
frutas = {"maçã", "banana", "laranja"}
frutas.add("uva")
print(frutas)  # Saída: {'maçã', 'banana', 'laranja', 'uva'}

Pilhas

Pilhas seguem o princípio LIFO (Last In, First Out), onde o último item adicionado é o primeiro a ser removido. São usadas para recuperação ordenada de dados.

  • Mutável
  • LIFO
pilha = []
pilha.append(1)
pilha.append(2)
print(pilha.pop())  # Saída: 2

Listas Encadeadas

Listas encadeadas consistem em nós onde cada nó contém dados e um ponteiro para o próximo nó na sequência. Elas são eficientes para inserções e exclusões.

  • Mutável
  • Ponteiros
  • Não Indexada
class Node:
    def __init__(self, data):
        self.data = data
        self.next = None

class LinkedList:
    def __init__(self):
        self.head = None

lista = LinkedList()
lista.head = Node(1)
segundo = Node(2)
terceiro = Node(3)

lista.head.next = segundo
segundo.next = terceiro

# Travessia
atual = lista.head
while atual:
    print(atual.data)  # Saída: 1 2 3
    atual = atual.next

Conclusão

Cada estrutura de dados em Python tem suas vantagens e é adequada para diferentes situações. Compreender como e quando usar listas, dicionários, tuplas, conjuntos, pilhas e listas encadeadas pode melhorar significativamente a eficiência e a clareza do seu código. A escolha da estrutura de dados certa depende dos objetivos específicos do seu programa e da natureza dos dados que você está manipulando.


FAQ

O que são estruturas de dados em Python?

Estruturas de dados são formas de organizar dados para acessá-los de forma eficiente. Em Python, incluem listas, dicionários, tuplas, conjuntos, pilhas e listas encadeadas.

Qual a diferença entre listas e tuplas em Python?

Listas são mutáveis e permitem adições, remoções e modificações de elementos, enquanto tuplas são imutáveis e não podem ser alteradas após a criação.

Para que servem os dicionários em Python?

Dicionários armazenam pares de chave-valor, permitindo acesso rápido aos valores associados a uma chave específica.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *