Algoritmos e estrutura de dados

De Wikoleculares
Revisão de 15h17min de 29 de outubro de 2025 por A.Melo (discussão | contribs)
Ir para navegação Ir para pesquisar

Um algoritmo é uma receita, ou seja, uma sequência finita de passos lógicos e bem definidos, criada para resolver um problema específico ou executar uma tarefa.

• Análise (Eficiência): A "qualidade" de um algoritmo é medida por sua complexidade:

Complexidade de Tempo: Quão rápido o algoritmo executa (quantos passos ele leva) à medida que a quantidade de dados aumenta.

Complexidade de Espaço: Quanta memória o algoritmo consome para rodar.


Estruturas de dados são formas sistemáticas de organizar, armazenar e gerenciar dados no computador, para que possam ser acessados e modificados de forma eficiente. Alguns exemplos:


Tipos Principais (Lineares):

  • Array (Vetor/Lista): Uma coleção de itens armazenados em locais de memória contíguos. Ótimo para acesso rápido pelo índice (ex: lista[5]).
  • Lista Ligada (Linked List): Uma coleção de itens onde cada um "aponta" para o próximo. Ótimo para inserir e remover itens no meio da lista.
  • Pilha (Stack): Segue a regra "Último a Entrar, Primeiro a Sair" (LIFO - Last In, First Out). Pense em uma pilha de pratos.
  • Fila (Queue): Segue a regra "Primeiro a Entrar, Primeiro a Sair" (FIFO - First In, First Out). Pense em uma fila de banco.


Tipos Principais (Não-Lineares):

  • Árvores (Trees): Estrutura hierárquica. Ótima para buscas rápidas (ex: Árvore Binária de Busca) ou para representar hierarquias (ex: pastas de arquivos).
  • Grafos (Graphs): Estrutura que representa conexões (redes). Usado para mapas (GPS), redes sociais, etc.

- Dica:

  • Fazer uma busca binária em uma lista ligada é ineficiente

Referências Interessantes