estrutura de dados
A resolução de problemas através de algoritmos requer a representação de entidades e objectos reais em itens de dados. As diferentes formas nas quais os itens de dados são logicamente relacionados definem diferentes estruturas de dados Esta secção apresenta um conjunto de estruturas de dados classificadas como primitivas e não primitivas. Estruturas de dados primitivas são directamente manipuladas em linguagem máquina (binária), enquanto que estruturas de dados não primitivas (ou complexas) representam estruturas de informação em conjuntos
(formados por estruturas de dados primitivas) logicamente relacionados.
Estrutura de Dados
Primitiva
Boolenas (lógicas)
Numéricas............. →
Caracteres alfanuméricos
Ponteiros
Inteiros
Reais
Não primitiva (complexas)
Comprimento fixo
(variáveis indexadas)
Vector
Matriz
Bidimensional
...
Multi-indexado
Comprimento variável
(Listas – adjacência física)
Lineares
Pilhas
Filas
Listas
Não lineares
Árvores
Grafos
Ficheiros
(memória secundária)
Sequenciais
Sequenciais indexados
Directos
A representação de uma particular estrutura de dados na memória do computador é designado por estrutura de armazenamento. É fundamental saber distinguir estes dois conceitos: estrutura de dados vs. estrutura de armazenamento. Existem diferentes configurações de armazenamento correspondentes a uma particular estrutura de dados. A preocupação desta disciplina centra-se na forma como representamos entidades e objectos reais através de estruturas de dados e não na forma como os armazenamos fisicamente na memória (primária ou secundária) do computador. A definição das estruturas de dados a utilizar por um algoritmo tem também subjacente as operações a executar nos dados representados. Diferentes operações podem ser executadas, tais como operações para criar e eliminar estruturas de dados, operações