Angola e Portugal · todas as cidades Subdomínios em perfilvia.com
Programação e informática

Estruturas de dados básicas: arrays, listas, pilhas, filas e dicionários

Aprende as estruturas de dados essenciais para estudantes de informática, quando usar cada uma e exemplos em Python fáceis de seguir.

· 4 min de leitura · Equipa Comunidade Sempre Online

Ilustração sobre estruturas de dados básicas – guia do blog Comunidade Sempre Online

Uma estrutura de dados é uma forma de organizar informação na memória para que a possas usar com eficiência. Escolher a estrutura certa pode tornar um programa simples e rápido; escolher a errada pode torná-lo lento e confuso. Estas são as mais importantes para quem estuda informática.

Porque interessam

Imagina uma biblioteca. Se os livros estiverem empilhados ao acaso, encontrar um título demora. Se estiverem ordenados por autor, é rápido. As estruturas de dados são as "estantes" dos programas, e combinam com os algoritmos que as usam.

Arrays e listas

Guardam vários elementos numa sequência, acedidos por posição (índice, que normalmente começa em 0).

notas = [12, 15, 17, 9]
print(notas[0])      # 12
notas.append(14)     # adiciona no fim
print(len(notas))    # 5
  • Acesso por posição é muito rápido.
  • Inserir ou remover no meio obriga a deslocar elementos.
  • Ideais quando tens uma coleção ordenada e acedes por índice.

Dicionários (mapas, tabelas de dispersão)

Guardam pares chave → valor e permitem encontrar um valor pela chave quase instantaneamente.

preco = {"caderno": 800, "caneta": 150, "mochila": 12000}
print(preco["caneta"])        # 150
preco["lápis"] = 90

Usa dicionários para fichas (um aluno, um produto), contagens (quantas vezes aparece cada palavra) e pesquisas por nome.

Conjuntos (sets)

Guardam elementos sem repetição, úteis para eliminar duplicados e comparar grupos:

a = {1, 2, 3, 3, 2}
print(a)               # {1, 2, 3}
b = {2, 3, 4}
print(a & b)           # interseção: {2, 3}

Pilhas (stack)

Funcionam como uma pilha de pratos: o último a entrar é o primeiro a sair (LIFO).

pilha = []
pilha.append("A")
pilha.append("B")
pilha.append("C")
print(pilha.pop())     # C

Exemplos reais: o botão "desfazer" de um editor, o histórico de páginas do navegador e a verificação de parênteses numa expressão.

Filas (queue)

Funcionam como uma fila de pessoas: o primeiro a entrar é o primeiro a sair (FIFO).

from collections import deque

fila = deque()
fila.append("Ana")
fila.append("Pedro")
print(fila.popleft())  # Ana

Exemplos reais: pedidos de impressão, atendimento de clientes e tarefas por processar.

Listas ligadas

Cada elemento guarda o valor e uma referência ao seguinte. Inserir e remover é fácil, mas aceder à posição 500 obriga a percorrer os anteriores. Aprende-se nas disciplinas de estruturas de dados porque ajuda a perceber como a memória funciona.

Árvores e grafos (um olhar rápido)

  • Árvore: elementos organizados de forma hierárquica (como as pastas de um computador). A árvore binária de pesquisa permite pesquisar de forma muito eficiente.
  • Grafo: elementos (nós) ligados por relações (arestas), como uma rede social ou um mapa de estradas.

São temas para mais tarde, mas convém saber que existem.

Como escolher

Preciso de…Estrutura
Sequência ordenada, acesso por posiçãoLista / array
Procurar por nome ou códigoDicionário
Sem repetiçõesConjunto
Desfazer / voltar atrásPilha
Atender por ordem de chegadaFila

Dica de estudo

Para cada estrutura, faz três coisas: escreve um exemplo seu, resolve um problema com ela e explica a um colega (ou a ti em voz alta) quando a usarias. Treina também com exercícios de lógica. Se estás num curso de informática e precisas de ajuda, temos aulas básicas de informática.

Perguntas frequentes

Array e lista são a mesma coisa?

Em Python, as listas fazem o papel dos arrays e são mais flexíveis. Noutras linguagens, os arrays têm tamanho fixo e as listas podem crescer.

Qual a estrutura mais usada?

Listas e dicionários, de longe, na maioria dos programas do dia a dia.

Preciso de saber isto para trabalhar com web?

Precisas do básico. As estruturas avançadas aparecem mais em entrevistas técnicas e em problemas de desempenho.

Se quiseres ajuda

Podemos fazer isto contigo.

Ver todos os serviços
Fala connosco

Tens uma dúvida sobre este tema?

Escreve-nos pelo WhatsApp e respondemos com preço, disponibilidade e prazo, se precisares de um serviço.

Falar no WhatsApp
Todo o projeto tem um orçamento. O valor final é confirmado conforme o serviço.
WhatsApp · Falar agora