Noções sobre estruturas de dados - Unicampsandra/MS614/handouts/SlidesNocoesSo...1) Acesso...
Transcript of Noções sobre estruturas de dados - Unicampsandra/MS614/handouts/SlidesNocoesSo...1) Acesso...
![Page 1: Noções sobre estruturas de dados - Unicampsandra/MS614/handouts/SlidesNocoesSo...1) Acesso aleatório não permitido. Devemos acessar os elementos sequencialmente começando do primeiro](https://reader033.fdocumentos.tips/reader033/viewer/2022042403/5f160f7705977d65981b275b/html5/thumbnails/1.jpg)
Noções sobre estruturas de dados
Equipe 1 : Giovanna Yoshida RA: 173261 Krismann Pedrosa RA: 177758
Luccas Fortunatto RA: 182805Marianna Degani RA: 183865
![Page 2: Noções sobre estruturas de dados - Unicampsandra/MS614/handouts/SlidesNocoesSo...1) Acesso aleatório não permitido. Devemos acessar os elementos sequencialmente começando do primeiro](https://reader033.fdocumentos.tips/reader033/viewer/2022042403/5f160f7705977d65981b275b/html5/thumbnails/2.jpg)
Introdução
Dado Estrutura
![Page 3: Noções sobre estruturas de dados - Unicampsandra/MS614/handouts/SlidesNocoesSo...1) Acesso aleatório não permitido. Devemos acessar os elementos sequencialmente começando do primeiro](https://reader033.fdocumentos.tips/reader033/viewer/2022042403/5f160f7705977d65981b275b/html5/thumbnails/3.jpg)
Apontadores/Ponteiros
![Page 4: Noções sobre estruturas de dados - Unicampsandra/MS614/handouts/SlidesNocoesSo...1) Acesso aleatório não permitido. Devemos acessar os elementos sequencialmente começando do primeiro](https://reader033.fdocumentos.tips/reader033/viewer/2022042403/5f160f7705977d65981b275b/html5/thumbnails/4.jpg)
Apontadores/Ponteiros
![Page 5: Noções sobre estruturas de dados - Unicampsandra/MS614/handouts/SlidesNocoesSo...1) Acesso aleatório não permitido. Devemos acessar os elementos sequencialmente começando do primeiro](https://reader033.fdocumentos.tips/reader033/viewer/2022042403/5f160f7705977d65981b275b/html5/thumbnails/5.jpg)
Nodo
![Page 6: Noções sobre estruturas de dados - Unicampsandra/MS614/handouts/SlidesNocoesSo...1) Acesso aleatório não permitido. Devemos acessar os elementos sequencialmente começando do primeiro](https://reader033.fdocumentos.tips/reader033/viewer/2022042403/5f160f7705977d65981b275b/html5/thumbnails/6.jpg)
Vetores
Um vetor é um conjunto de itens guardados em sequência. A ideia é guardar múltiplos itens do mesmo
tipo juntos, por facilitar o cálculo da posição de cada elemento.
1 2 3 n
...V
M
123
n
… … … …
………
...
1 2 3 m
![Page 7: Noções sobre estruturas de dados - Unicampsandra/MS614/handouts/SlidesNocoesSo...1) Acesso aleatório não permitido. Devemos acessar os elementos sequencialmente começando do primeiro](https://reader033.fdocumentos.tips/reader033/viewer/2022042403/5f160f7705977d65981b275b/html5/thumbnails/7.jpg)
Lista
![Page 8: Noções sobre estruturas de dados - Unicampsandra/MS614/handouts/SlidesNocoesSo...1) Acesso aleatório não permitido. Devemos acessar os elementos sequencialmente começando do primeiro](https://reader033.fdocumentos.tips/reader033/viewer/2022042403/5f160f7705977d65981b275b/html5/thumbnails/8.jpg)
Lista ligada
![Page 9: Noções sobre estruturas de dados - Unicampsandra/MS614/handouts/SlidesNocoesSo...1) Acesso aleatório não permitido. Devemos acessar os elementos sequencialmente começando do primeiro](https://reader033.fdocumentos.tips/reader033/viewer/2022042403/5f160f7705977d65981b275b/html5/thumbnails/9.jpg)
Lista Ligada
https://www.cs.usfca.edu/~galles/visualization/StackLL.html
![Page 10: Noções sobre estruturas de dados - Unicampsandra/MS614/handouts/SlidesNocoesSo...1) Acesso aleatório não permitido. Devemos acessar os elementos sequencialmente começando do primeiro](https://reader033.fdocumentos.tips/reader033/viewer/2022042403/5f160f7705977d65981b275b/html5/thumbnails/10.jpg)
Lista Ligada vs Vetores
Vetores podem ser utilizados para armazenar dados lineares do mesmo tipo, mas vetores têm as seguintes limitações:
Vantagens das listas sobre os vetores:
1) Tamanho dinâmico
2) Facilidade de inserção ou remoção
![Page 11: Noções sobre estruturas de dados - Unicampsandra/MS614/handouts/SlidesNocoesSo...1) Acesso aleatório não permitido. Devemos acessar os elementos sequencialmente começando do primeiro](https://reader033.fdocumentos.tips/reader033/viewer/2022042403/5f160f7705977d65981b275b/html5/thumbnails/11.jpg)
Lista Ligada vs Vetores
Desvantagens das listas sobre os vetores:
1) Acesso aleatório não permitido. Devemos acessar os elementos sequencialmente começando do primeiro nodo. Logo, não podemos fazer uma busca binária eficiente com listas ligadas
2) Espaço extra é necessário para cada elemento da lista (ponteiro)
![Page 12: Noções sobre estruturas de dados - Unicampsandra/MS614/handouts/SlidesNocoesSo...1) Acesso aleatório não permitido. Devemos acessar os elementos sequencialmente começando do primeiro](https://reader033.fdocumentos.tips/reader033/viewer/2022042403/5f160f7705977d65981b275b/html5/thumbnails/12.jpg)
Lista ligada circular
![Page 13: Noções sobre estruturas de dados - Unicampsandra/MS614/handouts/SlidesNocoesSo...1) Acesso aleatório não permitido. Devemos acessar os elementos sequencialmente começando do primeiro](https://reader033.fdocumentos.tips/reader033/viewer/2022042403/5f160f7705977d65981b275b/html5/thumbnails/13.jpg)
Lista Ligada Dupla
![Page 14: Noções sobre estruturas de dados - Unicampsandra/MS614/handouts/SlidesNocoesSo...1) Acesso aleatório não permitido. Devemos acessar os elementos sequencialmente começando do primeiro](https://reader033.fdocumentos.tips/reader033/viewer/2022042403/5f160f7705977d65981b275b/html5/thumbnails/14.jpg)
Skip List
![Page 15: Noções sobre estruturas de dados - Unicampsandra/MS614/handouts/SlidesNocoesSo...1) Acesso aleatório não permitido. Devemos acessar os elementos sequencialmente começando do primeiro](https://reader033.fdocumentos.tips/reader033/viewer/2022042403/5f160f7705977d65981b275b/html5/thumbnails/15.jpg)
Pilha
![Page 16: Noções sobre estruturas de dados - Unicampsandra/MS614/handouts/SlidesNocoesSo...1) Acesso aleatório não permitido. Devemos acessar os elementos sequencialmente começando do primeiro](https://reader033.fdocumentos.tips/reader033/viewer/2022042403/5f160f7705977d65981b275b/html5/thumbnails/16.jpg)
Fila
![Page 17: Noções sobre estruturas de dados - Unicampsandra/MS614/handouts/SlidesNocoesSo...1) Acesso aleatório não permitido. Devemos acessar os elementos sequencialmente começando do primeiro](https://reader033.fdocumentos.tips/reader033/viewer/2022042403/5f160f7705977d65981b275b/html5/thumbnails/17.jpg)
Fila
![Page 18: Noções sobre estruturas de dados - Unicampsandra/MS614/handouts/SlidesNocoesSo...1) Acesso aleatório não permitido. Devemos acessar os elementos sequencialmente começando do primeiro](https://reader033.fdocumentos.tips/reader033/viewer/2022042403/5f160f7705977d65981b275b/html5/thumbnails/18.jpg)
Fila
https://www.cs.usfca.edu/~galles/visualization/QueueArray.html
![Page 19: Noções sobre estruturas de dados - Unicampsandra/MS614/handouts/SlidesNocoesSo...1) Acesso aleatório não permitido. Devemos acessar os elementos sequencialmente começando do primeiro](https://reader033.fdocumentos.tips/reader033/viewer/2022042403/5f160f7705977d65981b275b/html5/thumbnails/19.jpg)
Árvore
![Page 20: Noções sobre estruturas de dados - Unicampsandra/MS614/handouts/SlidesNocoesSo...1) Acesso aleatório não permitido. Devemos acessar os elementos sequencialmente começando do primeiro](https://reader033.fdocumentos.tips/reader033/viewer/2022042403/5f160f7705977d65981b275b/html5/thumbnails/20.jpg)
Árvore
![Page 21: Noções sobre estruturas de dados - Unicampsandra/MS614/handouts/SlidesNocoesSo...1) Acesso aleatório não permitido. Devemos acessar os elementos sequencialmente começando do primeiro](https://reader033.fdocumentos.tips/reader033/viewer/2022042403/5f160f7705977d65981b275b/html5/thumbnails/21.jpg)
Árvore
![Page 22: Noções sobre estruturas de dados - Unicampsandra/MS614/handouts/SlidesNocoesSo...1) Acesso aleatório não permitido. Devemos acessar os elementos sequencialmente começando do primeiro](https://reader033.fdocumentos.tips/reader033/viewer/2022042403/5f160f7705977d65981b275b/html5/thumbnails/22.jpg)
Grafo
Vértice
Aresta
![Page 23: Noções sobre estruturas de dados - Unicampsandra/MS614/handouts/SlidesNocoesSo...1) Acesso aleatório não permitido. Devemos acessar os elementos sequencialmente começando do primeiro](https://reader033.fdocumentos.tips/reader033/viewer/2022042403/5f160f7705977d65981b275b/html5/thumbnails/23.jpg)
Heap
![Page 24: Noções sobre estruturas de dados - Unicampsandra/MS614/handouts/SlidesNocoesSo...1) Acesso aleatório não permitido. Devemos acessar os elementos sequencialmente começando do primeiro](https://reader033.fdocumentos.tips/reader033/viewer/2022042403/5f160f7705977d65981b275b/html5/thumbnails/24.jpg)
Heap
https://www.cs.usfca.edu/~galles/visualization/Heap.html
![Page 25: Noções sobre estruturas de dados - Unicampsandra/MS614/handouts/SlidesNocoesSo...1) Acesso aleatório não permitido. Devemos acessar os elementos sequencialmente começando do primeiro](https://reader033.fdocumentos.tips/reader033/viewer/2022042403/5f160f7705977d65981b275b/html5/thumbnails/25.jpg)
Hash
![Page 26: Noções sobre estruturas de dados - Unicampsandra/MS614/handouts/SlidesNocoesSo...1) Acesso aleatório não permitido. Devemos acessar os elementos sequencialmente começando do primeiro](https://reader033.fdocumentos.tips/reader033/viewer/2022042403/5f160f7705977d65981b275b/html5/thumbnails/26.jpg)
Referências
http://canvas.projekti.info/ebooks/Algorithm%20Design%20and%20Applications%5BA4%5D.pdf
http://usuarios.upf.br/~mcpinto/ed-tsi/ed_parte01.pdf
https://en.wikipedia.org/wiki/Pointer_(computer_programming)
https://www.geeksforgeeks.org/data-structures/
http://ticki.github.io/blog/skip-lists-done-right/
https://www.youtube.com/watch?v=D5QvQmes198
http://www.ic.unicamp.br/~francesquini/mc202/#_aulas
https://pt.wikipedia.org/wiki/Tabela_de_dispers%C3%A3o
https://en.wikipedia.org/wiki/Dijkstra%27s_algorithm#Using_a_priority_queue
https://www.youtube.com/watch?v=W18FDEA1jRQ
https://www.youtube.com/watch?v=W18FDEA1jRQ