Estruturasfundamentais

1063 palavras 5 páginas
Estruturas de Dados

Estruturas de Dados Fundamentais
Prof. Eduardo Alchieri

Estruturas de Dados
Fundamentais






Todos os tipos abstratos de dados (pilhas, filas, deques, etc.) podem ser implementados usando um vetor (array) ou um tipo de estrutura encadeada (lista encadeada)
Por isso, o vertor e a lista encadeada são chamados de estruturas de dados fundamentais
Estudaremos as seguintes estruturas fundamentais:


Vetores



Vetores multidimencionais (matrizes)



Listas Encadeadas

Vetores


Provavelmente o vetor é a estrutura mais comum (simples) usada para agregar dados

Em Java, um vetor é um objeto que contém uma lista de objetos (referências para objetos) ou tipos primitivos, todos do mesmo tipo



Estrutura homogênea: conjunto de dados do mesmo tipo



Cada elemento pode ser acessado pela sua posição (índice)



Alocação de memória é estática e sequencial


Uma vez alocado, o tamanho de um vetor está fixado



Exemplo: int[] a = new int[5];
0

0

0

0

0

Vetores



Exemplo: int[] a = new int[5]; a[0] = 1
1
0
0
0



a[1] = 2



0

1

2

0

0

0

a[2] = 3

1

2

3

0

0



a[3] = 4

1

2

3

4

0



a[4] = 5

1

2

3

4

5

Vetores


Em Java (e na maioria das linguagens de programação) cada vetor tem um campo para indicar seu tamanho (length)

Em nosso exemplo: a.length tem valor 5


O Java testa em tempo de execução a validade de cada índice Índices válidos: 0 até length-1
 Quando um índice inválido é usado, ocorre a exceção
IndexOutOfBoundsException
Representação na memória




int
5

length

int
0

int
0

int
0

int
0

int
0

Vetores


Vantagens:

Simplicidade




Acesso direto

Desvantagens:


Tamanho fixo

Vetores Multidimencionais


Um vetor multidimencional de dimensão n é uma coleção de ítens que são acessados através de n expressões de subscritos 
Exemplo: (i,j)-ésimo elemento de um vetor x bidimencional é acessado pela expressão x[i,j]


Em Java: int[ ][ ] x = new int[3][5];
 x[i] seleciona o i-ésimo vetor

Relacionados

  • ANTROPOLOGIA
    2036 palavras | 9 páginas