A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Estrutura de Dados Listas Lineares Estrutura que permite representar um conjunto de dados de forma a preservar a relação de ordem linear. Uma lista linear.

Apresentações semelhantes


Apresentação em tema: "Estrutura de Dados Listas Lineares Estrutura que permite representar um conjunto de dados de forma a preservar a relação de ordem linear. Uma lista linear."— Transcrição da apresentação:

1 Estrutura de Dados Listas Lineares Estrutura que permite representar um conjunto de dados de forma a preservar a relação de ordem linear. Uma lista linear é composta de nós, que podem conter, cada um deles, um dado primitivo ou um dado composto. Assim, uma lista é um conjunto de n>=0 nós: X 1, x 2, x k+1... X n Quando n=0 dizemos que a lista é vazia.

2 Estrutura de Dados Operações Acessar um nó qualquer da lista Alterar o valor de qualquer nó da lista Inserir um nó numa posição específica da lista, antes do k-ésimo nó da lista. Remover um nó de uma posição específica da lista Concatenar duas listas Determinar o número de nós da lista Localizar o nó que contém um dado valor

3 Estrutura de Dados Modos de Representação Contigüidade Encadeamento

4 Estrutura de Dados Contigüidade ou Listas Sequenciais Utiliza a seqüencialidade da memória, de tal forma que os nós de uma lista sejam armazenados em endereços contíguos, ou igualmente distanciados um do outro. Assim, se conhecermos o endereço do nó x, então o endereço de x k+1 pode ser determinado. Para listas contíguas (chamadas também de sequenciais) podemos utilizar o tipo construído Vetor.

5 Estrutura de Dados Operações em Listas Sequenciais Consideraremos para este exemplo o vetor: int lista[10]; Acessar um nó qualquer da lista lista[i] Alterar o valor de qualquer nó da lista lista[i] = x;

6 Estrutura de Dados Operações em Listas Sequenciais Inserir um nó numa posição específica da lista, antes do k-ésimo nó void inserir(int plista[10], int k, int fim, int val) { int i; for(i=fim-1; i>=k; i--) { plista[i+1] = plista[i]; } fim = fim + 1; plista[k] = val; }

7 Estrutura de Dados Operações em Listas Sequenciais Remover um nó de uma posição específica da lista int remover(int plista[10], int k, int fim) { int i; if ((k fim)) return 0; else { for(i=k; i<=fim-1; i++) { plista[i] = plista[i+1]; } fim = fim - 1; return 1; }

8 Estrutura de Dados Exercício para Aula Considere que em uma estante de sua casa há uma prateleira que pode armazenar no máximo 8 livros (considere que os livros têm tamanho médio de 300 páginas). Faça um programa que represente esta estante, sendo que nela você poderá incluir, retirar e consultar um livro, em qualquer posição que ele esteja, e também determinar quantos livros você tem guardados nesta prateleira. Faça esta implementação em linguagem C.


Carregar ppt "Estrutura de Dados Listas Lineares Estrutura que permite representar um conjunto de dados de forma a preservar a relação de ordem linear. Uma lista linear."

Apresentações semelhantes


Anúncios Google