Изучите, как следует реализовывать эффективные алгоритмы на основе важнейших структур данных на языке Java, а также как измерять производительность этих алгоритмов. Каждая глава сопровождается упражнениями, помогающими закрепить материал.* Научитесь работать со структурами данных, например, со списками и словарями, разберитесь, как они работают* Напишите приложение, которое читает страницы Википедии, выполняет синтаксический разбор и обеспечивает навигацию по полученному дереву данных * Анализируйте код и учитесь прогнозировать, как быстро он будет работать и сколько памяти при этом потреблять * Пишите классы, реализующие интерфейс Map, пользуйтесь при этом хеш-таблицей и двоичным деревом поиска * Создайте простой веб-поисковик с собственным поисковым роботом: он будет индексировать веб-страницы, сохранять их содержимое и возвращать нужные результаты
Izuchite, kak sleduet realizovyvat effektivnye algoritmy na osnove vazhnejshikh struktur dannykh na jazyke Java, a takzhe kak izmerjat proizvoditelnost etikh algoritmov. Kazhdaja glava soprovozhdaetsja uprazhnenijami, pomogajuschimi zakrepit material.* Nauchites rabotat so strukturami dannykh, naprimer, so spiskami i slovarjami, razberites, kak oni rabotajut* Napishite prilozhenie, kotoroe chitaet stranitsy Vikipedii, vypolnjaet sintaksicheskij razbor i obespechivaet navigatsiju po poluchennomu derevu dannykh * Analizirujte kod i uchites prognozirovat, kak bystro on budet rabotat i skolko pamjati pri etom potrebljat * Pishite klassy, realizujuschie interfejs Map, polzujtes pri etom khesh-tablitsej i dvoichnym derevom poiska * Sozdajte prostoj veb-poiskovik s sobstvennym poiskovym robotom: on budet indeksirovat veb-stranitsy, sokhranjat ikh soderzhimoe i vozvraschat nuzhnye rezultaty