Vous êtes sur la page 1sur 5
Estruturas de Dados Algoritmos 5° edicao ee 1 Cartilha de Java... 60-66 14 12 13 14 15 16 17 18 19 4.10 2 Projeto Orientado a Objetos ....--- 24 Sumario 1 Iniciando: classes, tipos e objetos 2 1.1.1 Tipos bésicos...... ee roe 1.1.2 Objetos 7 1.1.3 Tipos enumerados. 14 Métodos. 15 Expressées ...-- = 20 1.3.4 Literais. de eee 20) 4.3.2 Operadores .... 0... 00sec reece eeee eens Pee! 1.3.3 Conversores e autoboxing/unboxing ‘em express6es 25 Controle de fluxo. poeea 27 1.4.1 Oscomandosif e switch... .. ed 1.4.2 LAGOS... 0.260 5 + 29 1.4.3 Expressdes explicitas de controla defuX0...eaesereeeeee Bt Arranjos... ero eeek entice 33 1.5.1 Declarando arranjos. .. . 35 1.5.2 Arranjos sdo objetos 36 Entrada e safda simples... . - 38 Um programa de exemplo .. .- . 42 Classes aninhadas e pacotes «.. 45 Escrevendo um programa em Java. 47 1.9.1 Projeto. 1.9.2 Pseudocddigo 1.9.3 Codificagao 1.9.4 Teste e depuragao Exercicios .. Objetivos, principios e padrées.....- 2.1.1 Objetivos do projeto orientado a objetos -....- 60 2.1.2 Principios de projeto orientado a objetos .....-----.---+- 61 2.1.3 Padrées de projeto .....-.- pas . 64 Sumdrio 5.3.3 Deques no framework de colegdes de Java cece eses 230 5.4 Exercicios ... 39231 G6. Listas olteradores i.0c cc: cee ec cece cee ecctens se se5s 287 6.1. Listas arranjo ..... : + 238 6.1.1 O tipo abstrato de dados lista arranjo . 238 6.1.2 Opadrao adaptador ........ : -. 239 6.1.2 Umaimplementacdo simples usando arranjo. - 240 6.1.4 Ainterface simples e a classe java.util ArrayList . 242 6.1.5 Implementando uma lista arranjo usando arranjos @MENENES sss cree ene. a 243 6.2 Listas denodos........ eopooscaccocoogn £2.t/ 6.2.1 Operagdes baseadas em nodos 247 62.2 Posigdes 2a7 6.2.3 0 tipo abstrato de dados lista de nodes. - 248 6.2.4 Implementagdo usando lista duplamente encadeada...... 252 6.3 Iteradores ...... ee euere sea 257 6.3.1 Os tipos abstratos de dados iterador e iteravel.. . . 287 63.2 Olago de Java para-cada... 259 63.3 _Implementando iteradores. = 260 6.3.4 Iteradores de lista em Java . - 262 6.4 Os TADS de lista e o framework de colegées. - 263 6.4.1 Listas no framework de colegdes de Java. eet | 26d) 64.2 Sequéncias ....... coo tte ss re 287 6.5 Estudo de caso: a heuristica mover-para-frente . 269 6.5.1 Usando uma lista ordenada e uma classe aninhada........ 270 6.5.2 Usando uma lista com a heuristica mover-para-frente ...... 272 6.5.3 Possiveis usos de uma lista de favoritos. . 274 6.6 Exercicios . 276 7 Arvores....... Sew erecennseertieesesseeds 263 7.1 Arvores genéricas. ... weeeeee 284 7.11 Definigdo de arvore e propriedades. ..... ceeeeeees 284 7.1.2 Otipo abstrato de dados drvore ........ . 287 7.1.3 Implementando uma arvore - 288 7.2 Algoritmos de caminhamento em arvores .. 7.2.1 Altura e profundidade ......... 291 7.2.2 Caminhamento prefixado 293 7.2.3 Caminhamento pés-fixado .... 296 7.3 Arvores bindrias ..... 7.3.1 OTAD arvore binaria = 601 Sumario _ xix 7.3.2 Umainterface de arvore bindria em Java 302 7.3.3 Propriedades de arvores bindrias 7 302 7.3.4 Estruturas encadeadas para arvores bindrias ... .. 304 7.3.5 Uma estrutura baseada em lista arranjo para arvores bindtiag’ scc.e- sede eae 313 7:36 Gaminhamentos sobre érvores bindrias eee oo) 7.3.7 Opadrao do método modelo ...-..-. +++ ce vee eee s 822 74 Exercicios ... Heaps e Filas de Prioridade . . 8.1 O tipo abstrato de dados fila de p 8.1.1 Chaves, prioridades e relagdes de ordem total . 338 8.1.2 _ Entradas e comparadores 339 8.1.3 OTAD fila de prioridade. oe . 341 8.1.4 Ordenando com uma fila de prioridade....... 342 8.2 Implementando uma fila de prioridade com listas . .. 343 8.2.1 Implementagao de uma fila de prioridade em Java usando uma lista... . - 345 8.2.2 Selection sorte insertion sort . . 347 83 Heaps... oe wee 349 83.1 Aestrutura de dados heap - -- 350 8.3.2 Arvores bindrias completas e suas representagdes. 852 8.3.3 Implementando uma fila de prioridade com um heap. . 357 8.3.4 Implementagao em Java ... - 362 83.5 Heapsort .....-- 6.0 . 365 8.3.6 — Construgao bottom-up do roe a coves 367 ilas de prioridade adaptaveis. . . - 370 8.4.1 Usando a classe java.util-PriorityQueue . 371 8.4.2 Entradas conscientes de localizagao. . 372 8.4.3 Implementando uma fila de prioridade adaptavel a . 374 8.5 Exercicios .. iiseessosn 876 Tabelas de Hash, Mapas e Skip Lists ........-...-++2+++ 385 9.1 Mapas .. - 386 9.1.1 OTAD mapa... Eee 387 9.1.2 Umaimplementagao simples de mapa... + 388 9.2 Tabelas de hash .. 9.2.1 Arranjo de buckets 9.2.2 Fungdes de hash... 92.3 Cédigosdehash........ 9.2.4 Fungdes de compressdo - 390 .. 391 - 395 xxii Sumario 13 Algoritmos GrafoS........2++ceeeccceereceerseeeeses 587 ABH Grafos 02.2 ---cnann 598 13.1.4 OTADgrafo...... 602 18.2. Estruturas de dados para grafos...... 603 13.2.1 Alista de arestas . . 603 13.22 Alista de adjacéncias - 606 13.2.3 Aestrutura da matriz de adjacéncia . 608 13.3 Caminhamento em grafos . 610 13.3.1 Pesquisa em profundidade : 610 133.2 _Implementando a pesquisa em profuncidade. . 614 13.3.3 Caminhamento em targura. seve s 622 13.4 Grafos Ere 628 13.4.1 Caminhamento em um digrafo . . 627 13.4.2 Fechamento transitive. 630 13.4.3 Grafos aciclicos dirigidos. 633 13.5 Caminhos minimos.. eee 035 13.5.1 Grafos ponderados 637 13.5.2 Oalgoritmo de Dijkstra 638 13.5.3 Uma implementagao alternativa do algoritmo de Dijkstra... 644 13.6 Arvores de cobertura minima . . . 647 13.6.1. Algoritmo de Kruskal....... ++ 649 13.6.2 Qalgoritmo Prim-Jamnik. ... . 653 18.7 Exercicios ......... 000000 14° Memoria...........+ 14.1 Gerenciamento de meméria .... : 14.1.1 Pithas na maquina virtual de Java... 668 14.1.2 Alocando espago na meméria heap Be (iA) 14.1.3 Coleta de lixo . 673 14.2 Meméria externa e caching 675 14.2.1 Abierarquia de meméria -. 675 14.22 Estratégias de cache. . 677 14.3. Pesquisa externa e arvores B . 681 14.3.1 Arvores (a,b)... 682 14.3.2 Arvores B. - 684 14.4 Ordenando meméria externa. .... 14.4.1. Merge genérico ..... 686 14.5 Exercicios . aeences- (687, A Fatos Matematicos Uteis .........---..+--00e eee ees 694 Bibliografia. . indice. +. 699 ++ 705

Vous aimerez peut-être aussi