Please enable JavaScript.
Coggle requires JavaScript to display documents.
Listas - Coggle Diagram
Listas
Linked Lists
-
-
Estrutura de dados dinâmica: cresce orgânicamente a partir do momento que é necessário sequenciar mais elementos.
Tipos de linked lists
Não circular
Simples: quando existem apenas ponteiros saindo do atual para o sucessor, logo existem ponteiros apenas dos antecessores para os sucessores(só vai pra frente)
Duplo: existem ponteiros para fazer o caminho contrário, ir de um sucessor para um antecessor.
Circular
Simples: quando só existem ponteiros dos antecessores apontando para os sucessores, mas o último ao invés de não possuir um ponteiro, possui um que aponta para o primeiro elemento
Duplo: o primeiro elemento possuiu um ponteiro para o seu sucessor e um para o último elemento, enquanto o último elemento possui ponteiros para seu antecessor e o primeiro elemento.
Delicado para se mexer, pois um erro na manipulação dos ponteiros faz você perder toda a lista.
-
Arrays
Estrutura de dados estática: possui uma quantidade limite de dados predetermianda na sua implementação.
-
Para ser uma lista, o acesso a seus dados deve ser feito de forma exclusivamente sequencial.
Data type
Abstract data type(ADT): Especie de protótipo do tipo de dado, mostra todos os seus membros, desde propriedades até métodos, mas não possui sua implementação.
Data Structure: Onde fica a implementação dos métodos 'prototipados' na ADT -- por isso é a estrutura do dado em si.
Tipos de acesso
Acesso sequêncial: estutura onde os dados são acessados de forma sequêncial, sempre buscando o sucessor do dado atual.
Próximo, próximo, próximo...
Acesso Randômico(NÃO É UM TIPO DE ACESSO DE LISTAS): Estrutura em que os dados são acessados independente de antecessor e sucessor, quando você onsegue acessar diretamente o dado identificando o seu index.
-
Linked lists podem ser de pouca eficiência no gerenciamento de memória quando lidamos com sistemas que precisam de uma otimização em relação a memória, pois além de armazenar os elementos sequenciados deve-se guardar também os ponteiros que apontam suas posições na mémoria.
Isso pode ser irrelevante numa linked list que guarda grandes objetos, mas numa linked list de inteiros, esse armazenamento adicional para para os ponteiros pode ser substâncial, exigindo até o dobro de espaço alocado.
Sequências, normalmente, homogênias de dados.