Algoritmos E Estruturas De Dados Formam O Núcleo Da Ciência Da Computação, Sendo Os Componentes Básicos De Qualquer Software. Aprender Como Programar Computadores Está Intimamente Ligado A Algoritmos, Já Que Programas São Formulações Concretas De Algoritmos. Aprendê-los É Crucial Para Qualquer Pessoa Que Deseja Desenvolver Softwares De Qualidade. Esta Obra Apresenta Os Principais Algoritmos E Estruturas De Dados Conhecidos. As Técnicas De Projeto De Algoritmos São Ensinadas De Formas Simples, Seguindo O Paradigma De Orientação A Objetos, Por Meio De Refinamentos Sucessivos Até O Nível De Uma Implementação Na Linguagem Java, E Todo O Programa Java Tem Um Programa C++ Correspondente Nos Apêndices. Destaques: O Livro Cobre Estruturas De Dados Básicas, Contendo Listas Lineares, Pilhas E Filas, Algoritmos De Ordenação E De Pesquisa Em Memórias Primária E Secundária, Algoritmos Em Grafos E Processamento De Cadeias De Caracteres, Técnicas De Análise De Algoritmos, Paradigmas De Projeto De Algoritmos, E Estudo Da Complexidade Computacional De Algoritmos. Ênfase Em Tipos Abstratos De Dados, Programação Modular, Programação Orientada A Objetos Encapsulamento E Independência De Implementação De Tipos Abstratos De Dados Com Reaproveitamento De Código. Informação Sobre O Comportamento Teórico E Prático Dos Algoritmos, Fornecendo Uma Base De Comparação Entre Os Algoritmos.