ODBIERZ TWÓJ BONUS :: »

Struktury danych i algorytmy w języku Java. Przewodnik dla początkujących James Cutajar

Autor:
James Cutajar
Serie wydawnicze:
Przewodnik dla początkujących
Wydawnictwo:
Helion
Wydawnictwo:
Helion
Ocena:
2.7/6  Opinie: 3
Stron:
168
Druk:
oprawa miękka
Dostępne formaty:
     PDF
     ePub
     Mobi
Czytaj fragment
Książka
23,94 zł 39,90 zł (-40%)
23,94 zł najniższa cena z 30 dni

Dodaj do koszyka Wysyłamy w 24h

Ebook
19,95 zł 39,90 zł (-50%)
19,95 zł najniższa cena z 30 dni

Dodaj do koszyka lub Kup na prezent Kup 1-kliknięciem

Przenieś na półkę

Do przechowalni

Do przechowalni

Powiadom o dostępności audiobooka »

Czego się nauczysz?

  • Definiowania algorytmów i analizy ich złożoności obliczeniowej
  • Rozróżniania różnych typów złożoności: liniowej, kwadratowej, logarytmicznej, wykładniczej i stałej
  • Implementowania i optymalizowania algorytmów sortowania: bąbelkowego, szybkiego i przez scalanie
  • Tworzenia i obsługi podstawowych struktur danych: list powiązanych, kolejek i stosów
  • Modelowania stosów i kolejek z użyciem tablic
  • Budowania i wykorzystywania tablic z haszowaniem oraz rozwiązywania kolizji
  • Implementowania binarnych drzew poszukiwań i wykonywania operacji na drzewach
  • Stosowania algorytmów zachłannych do rozwiązywania problemów optymalizacyjnych
  • Projektowania algorytmów w paradygmacie "dziel i zwyciężaj" oraz programowania dynamicznego
  • Rozwiązywania problemów takich jak plecakowy, najdłuższy wspólny podciąg czy wydawanie reszty
  • Implementowania algorytmów wyszukiwania wzorca w tekście: naiwnych, Boyera-Moore'a, Rabina-Karpa, Knutha-Morrisa-Pratta i Aho-Corasick
  • Reprezentowania grafów za pomocą list i macierzy sąsiedztwa
  • Przeprowadzania przeszukiwania wszerz (BFS) i w głąb (DFS) oraz wykrywania cykli w grafach
  • Wyznaczania najkrótszych ścieżek w grafach z użyciem algorytmów Dijkstry i Floyda-Warshalla
  • Wykorzystywania liczb pierwszych w algorytmach, w tym sita Eratostenesa i rozkładu na czynniki pierwsze
  • Rozumienia klas złożoności problemów i znaczenia minimalnych drzew rozpinających oraz algorytmu A*

Aby aplikacje mogły spełniać oczekiwania dotyczące wydajności i szybkości działania, programista musi orientować się w typowych problemach z wykonywaniem kodu i wiedzieć, które techniki sprawdzą się w danej sytuacji. W tym celu powinien biegle posługiwać się algorytmami i strukturami danych. Wiedza ta umożliwia rozpoznawanie typowych zagrożeń i wybór najlepszych rozwiązań. Warto pamiętać, że w przypadku większości codziennych problemów z kodem istnieją już wypróbowane rozwiązania. Znajomość tych zagadnień jest niezwykle ważna dla każdego inżyniera oprogramowania.

To książka przeznaczona dla programistów, którzy chcą w praktyczny sposób posługiwać się popularnymi algorytmami i strukturami danych, zrozumieć ich działanie i skuteczniej poprawiać wydajność swojego kodu w Javie. Przedstawiono tu narzędzia przydatne w pracy z algorytmami i w tworzeniu efektywnych aplikacji. Opisano praktyczne aspekty złożoności algorytmów. Omówiono algorytmy sortowania oraz inne popularne wzorce programowania, a także takie struktury danych jak drzewa binarne, tablice z haszowaniem i grafy. Następnie zaprezentowano koncepcje bardziej zaawansowane, wśród nich paradygmaty projektowania algorytmów i teorię grafów.

W tej książce między innymi:

  • definiowanie algorytmu i złożoność algorytmiczna
  • struktury danych i ich implementacje
  • algorytmy sortowania i wyszukiwania wzorca w tekście
  • paradygmaty projektowania algorytmów
  • grafy i sposoby ich reprezentacji w programach komputerowych
  • grafy jako moduły do budowy złożonych algorytmów

Algorytm i struktura danych: tak działa optymalny kod!

Wiosna w głowie, ebook w dłoni! / do -50% na tysiące tytułów

Wybrane bestsellery

O autorze książki

James Cutajar jest programistą specjalizującym się w skalowalnych obliczeniach o wysokiej wydajności oraz w algorytmach rozproszonych. Pisze książki, bierze udział w projektach rozwoju otwartego oprogramowania, bloguje i zajmuje się marketingiem technologii.

Zobacz pozostałe książki z serii Przewodnik dla początkujących

Helion - inne książki

Najczęściej zadawane pytania (FAQ)
1. Czy książka zawiera praktyczne przykłady kodu w języku Java?
Tak, książka prezentuje liczne przykłady kodu w języku Java, ilustrujące omawiane algorytmy i struktury danych, co ułatwia zrozumienie i samodzielne ćwiczenie.
2. Czy znajdę w tej książce omówienie złożoności algorytmów i notacji dużego O?
Tak, już w pierwszym rozdziale autor szczegółowo wyjaśnia złożoność algorytmów, w tym notację dużego O oraz różne typy złożoności, jak liniowa, kwadratowa czy logarytmiczna.
3. Czy ta książka pomoże mi przygotować się do rozmów kwalifikacyjnych na stanowisko programisty Java?
Tak, znajomość algorytmów i struktur danych jest kluczowa podczas rekrutacji na stanowiska programistyczne, a książka obejmuje zagadnienia często pojawiające się w takich rozmowach.
4. Jakie tematy dotyczące struktur danych są omawiane w książce?
Książka wyjaśnia m.in. listy powiązane, stosy, kolejki, tablice z haszowaniem, drzewa binarne oraz grafy, pokazując ich implementacje i zastosowania w Javie.
5. Czy książka obejmuje zaawansowane techniki, takie jak programowanie dynamiczne czy algorytmy grafowe?
Tak, w książce znajdziesz rozdziały poświęcone programowaniu dynamicznemu, algorytmom grafowym, paradygmatom projektowania algorytmów oraz innym zaawansowanym zagadnieniom.
6. Czy mogę korzystać z tej książki jako samouczka do nauki algorytmów od podstaw?
Tak, książka jest napisana z myślą o osobach początkujących i prowadzi czytelnika krok po kroku przez kolejne zagadnienia, umożliwiając samodzielną naukę.
7. Czy książka omawia konkretne algorytmy sortowania i wyszukiwania?
Tak, znajdziesz tu m.in. sortowanie bąbelkowe, szybkie, przez scalanie oraz algorytmy wyszukiwania, takie jak Boyer-Moore, Rabina-Karpa czy Knutha-Morrisa-Pratta.
8. Czy książka nadaje się do nauki samodzielnej, czy wymaga wcześniejszej znajomości innych książek lub kursów?
Książka została napisana z myślą o osobach rozpoczynających przygodę z algorytmami w Javie, nie wymaga wcześniejszego korzystania z innych źródeł - wystarczy podstawowa znajomość języka Java.

Zamknij

Przenieś na półkę
Dodano produkt na półkę
Usunięto produkt z półki
Przeniesiono produkt do archiwum
Przeniesiono produkt do biblioteki

Zamknij

Wybierz metodę płatności

Książka
23,94 zł
Dodaj do koszyka
Ebook
19,95 zł
Dodaj do koszyka
Płatności obsługuje:
Ikona płatności Alior Bank Ikona płatności Apple Pay Ikona płatności Bank PEKAO S.A. Ikona płatności Bank Pocztowy Ikona płatności Banki Spółdzielcze Ikona płatności BLIK Ikona płatności Crédit Agricole e-przelew Ikona płatności dawny BNP Paribas Bank Ikona płatności Google Pay Ikona płatności ING Bank Śląski Ikona płatności Inteligo Ikona płatności iPKO Ikona płatności Millennium Ikona płatności mTransfer Ikona płatności Nest Bank Ikona płatności Paypal Ikona płatności PayPo | PayU Płacę później Ikona płatności PayU Płacę później Ikona płatności Plus Bank Ikona płatności Płacę z Citi Handlowy Ikona płatności Płacę z Getin Bank Ikona płatności Płać z BOŚ Ikona płatności Płatność online kartą płatniczą Ikona płatności Santander Ikona płatności Visa Mobile