"nieprzeciętne opanowanie dowolnego języka programowania nie wystarczy do tego, żeby stać się perfekcyjnym programistą czy deweloperem. Konieczne jest także zdobycie praktycznej wiedzy dotyczącej algorytmów. Oznacza to, że by pisać udoskonalony kod, w trakcie rozwiązywania rzeczywistych problemów trzeba umieć korzystać z algorytmów, włączając w to ich budowanie, modyfikację i implementację. Niezależnie od tego, jaką dziedziną informatyki się zajmujesz, biegłość w posługiwaniu się algorytmami w wymierny sposób ułatwi Ci pracę i poprawi jej rezultaty.
Ta książka jest przystępnym wprowadzeniem do wiedzy o algorytmach wraz z przykładami implementacji napisanymi w Pythonie. Oprócz praktycznego omówienia algorytmów znalazło się tu wyjaśnienie takich pojęć jak klasy złożoności czy analiza asymptotyczna. Skrupulatnie omówiono także najważniejsze algorytmy, w tym przeróżne sposoby haszowania, sortowania czy przeszukiwania. Tam, gdzie to niezbędne, wprowadzono struktury danych języka Python. Z poradnika programiści i testerzy dowiedzą się, w jaki sposób wykorzystywać algorytmy do pomysłowego rozwiązywania problemów obliczeniowych. Zrozumienie treści ułatwiają niebanalne materiały wizualne i ćwiczenia utrwalające, które pozwolą na przetestowanie zdobytej wiedzy w praktyce.
W książce między innymi:
podstawowe algorytmy użytkowane w inżynierii oprogramowania
standardowe strategie sprawnego rozwiązywania problemów
ocena złożoności czasowej kodu z zastosowaniem notacji sporego O
użyteczne stosowanie algorytmów z użyciem bibliotek i struktury informacji Pythona
główne zasady działania ważnych algorytmów
O autorze
George Heineman jest naukowcem i wykładowcą akademickim. Od ponad 20 lat zajmuje się inżynierią oprogramowania i algorytmiką. Jest autorem i współautorem książek technicznych, niejednokrotnie też prowadzi szkolenia dotyczące użytkowania algorytmów. Ma nietypową pasję: łamigłówki. Jest twórcą odmiany sudoku Sujiken"