Nauka algorytmów. Poradnik pisania lepszego kodu
- Autor:
- George Heineman
- Wydawnictwo:
- Helion
- Ocena:
- Bądź pierwszym, który oceni tę książkę
- Stron:
- 232
- Druk:
- oprawa miękka
- Dostępne formaty:
-
PDFePubMobi
Opis książki: Nauka algorytmów. Poradnik pisania lepszego kodu
Doskonałe opanowanie dowolnego języka programowania nie wystarczy do tego, aby stać się świetnym programistą czy deweloperem. Konieczne jest również zdobycie praktycznej wiedzy dotyczącej algorytmów. Oznacza to, że aby pisać lepszy kod, podczas 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. Dokładnie omówiono także najważniejsze algorytmy, w tym róż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ą ciekawe materiały wizualne i ćwiczenia utrwalające, które pozwolą na przetestowanie zdobytej wiedzy w praktyce.
W książce między innymi:
- podstawowe algorytmy wykorzystywane w inżynierii oprogramowania
- standardowe strategie wydajnego rozwiązywania problemów
- ocena złożoności czasowej kodu z wykorzystaniem notacji dużego O
- praktyczne stosowanie algorytmów z wykorzystaniem bibliotek i struktury danych Pythona
- główne zasady działania ważnych algorytmów
Wybrane bestsellery
-
When it comes to writing efficient code, every software professional needs to have an effective working knowledge of algorithms. In this practical book, author George Heineman (Algorithms in a Nutshell) provides concise and informative descriptions of key algorithms that improve coding in multipl...(0,00 zł najniższa cena z 30 dni)
237.15 zł
279.00 zł(-15%) -
Książka Algorytmy. Almanach to cała wiedza o algorytmach, potrzebna ambitnemu programiście, zebrana w jeden kompletny podręcznik. Książka zawiera opisy algorytmów do rozwiązywania rozmaitych problemów, pomaga w wyborze i realizacji algorytmów odpowiednich do Twoich potrzeb, a także dostarcza wyda...
-
O tym, ile problemów sprawia niedbale napisany kod, wie każdy programista. Nie wszyscy jednak wiedzą, jak napisać ten świetny, „czysty” kod i czym właściwie powinien się on charakteryzować. Co więcej – jak odróżnić dobry kod od złego? Odpowiedź na te pytania oraz sposoby tworzen...(0,00 zł najniższa cena z 30 dni)
55.30 zł
79.00 zł(-30%) -
Po przyswojeniu zagadnień związanych z językiem C# i aplikacjami konsoli dowiesz się, jak tworzyć praktyczne aplikacje i usługi z wykorzystaniem biblioteki ASP.NET Core, a także wzorzec MVC i technologię Blazor. Zapoznasz się z metodami stosowania wielozadaniowości do poprawy wydajności i skalowa...
C# 10 i .NET 6 dla programistów aplikacji wieloplatformowych. Twórz aplikacje, witryny WWW oraz serwisy sieciowe za pomocą ASP.NET Core 6, Blazor i EF Core 6 w Visual Studio 2022 i Visual Studio Code. Wydanie VI C# 10 i .NET 6 dla programistów aplikacji wieloplatformowych. Twórz aplikacje, witryny WWW oraz serwisy sieciowe za pomocą ASP.NET Core 6, Blazor i EF Core 6 w Visual Studio 2022 i Visual Studio Code. Wydanie VI
(0,00 zł najniższa cena z 30 dni)111.30 zł
159.00 zł(-30%) -
Jeśli chcesz po prostu zrozumieć działanie algorytmów, a nie masz ochoty na mozolne przedzieranie się przez setki trudnych stron, to trzymasz w ręku właściwą książkę! Dzięki temu interesującemu, przystępnemu podręcznikowi szybko przyswoisz sobie najważniejsze pojęcia i łatwo zrozumiesz, w jaki sp...(0,00 zł najniższa cena z 30 dni)
46.90 zł
67.00 zł(-30%) -
Oto intuicyjny przewodnik dla średnio zaawansowanych programistów Pythona, pomyślany tak, by przyswajać zasady programowania zorientowanego obiektowo podczas praktycznych ćwiczeń. Dowiesz się, jakie problemy wiążą się z zastosowaniem podejścia proceduralnego i jak dzięki podejściu obiektowemu pis...
Python zorientowany obiektowo. Programowanie gier i graficznych interfejsów użytkownika Python zorientowany obiektowo. Programowanie gier i graficznych interfejsów użytkownika
(0,00 zł najniższa cena z 30 dni)62.30 zł
89.00 zł(-30%) -
To drugie, zaktualizowane i poprawione wydanie bestsellerowego podręcznika Programowania w Pythonie pozwoli Ci błyskawicznie zacząć tworzyć kod, który działa! Zaczniesz od zrozumienia podstawowych koncepcji programistycznych, następnie nauczysz się zapewniać programom interaktywność i wykształcis...(0,00 zł najniższa cena z 30 dni)
69.30 zł
99.00 zł(-30%) -
Ta książka powinna zostać przestudiowana przez każdego architekta nowoczesnych systemów rozproszonych. Jej celem jest pokazanie sposobów rozwiązywania trudnych problemów związanych z projektowaniem takiego oprogramowania. W krytyczny i wszechstronny sposób omówiono w niej najważniejsze problemy u...
Złożone zagadnienia architektury oprogramowania. Jak analizować kompromisy i podejmować trudne decyzje Złożone zagadnienia architektury oprogramowania. Jak analizować kompromisy i podejmować trudne decyzje
(0,00 zł najniższa cena z 30 dni)69.30 zł
99.00 zł(-30%) -
Dzięki tej książce nauczysz się przekształcać suche dane liczbowe w pełną empatii narrację! Aby spełniły one swoje zadanie, ktoś musi przedstawić zawarte w nich informacje w postaci opowieści. W tej publikacji wyczerpująco i praktycznie opisano przebieg tego procesu. Jej lektura sprawi, że rozwin...
Opowieści ukryte w danych. Wyjaśnij dane i wywołaj działania za pomocą narracji Opowieści ukryte w danych. Wyjaśnij dane i wywołaj działania za pomocą narracji
(0,00 zł najniższa cena z 30 dni)20.90 zł
67.00 zł(-69%) -
To książka przeznaczona dla programistów, którzy chcą zacząć pracę z Gitem i GitHubem. W każdym rozdziale zawarto wyłącznie przydatne informacje, a te uzupełniono licznymi ćwiczeniami. Dzięki temu równocześnie możesz się uczyć Gita i nabierać sprawności w posługiwaniu się tym systemem. Przewodnik...
Git i GitHub. Kontrola wersji, zarządzanie projektami i zasady pracy zespołowej Git i GitHub. Kontrola wersji, zarządzanie projektami i zasady pracy zespołowej
(0,00 zł najniższa cena z 30 dni)48.30 zł
69.00 zł(-30%)
O autorze książki
1 George HeinemanGeorge 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, często też prowadzi szkolenia dotyczące stosowania algorytmów. Ma nietypową pasję: łamigłówki. Jest twórcą odmiany sudoku Sujiken
Ebooka przeczytasz na:
-
czytnikach Inkbook, Kindle, Pocketbook i innych
-
systemach Windows, MacOS i innych
-
systemach Windows, Android, iOS, HarmonyOS
-
na dowolnych urządzeniach i aplikacjach obsługujących formaty: PDF, EPub, Mobi
Masz pytania? Zajrzyj do zakładki Pomoc »
Audiobooka posłuchasz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolonych urządzeniach i aplikacjach obsługujących format MP3 (pliki spakowane w ZIP)
Masz pytania? Zajrzyj do zakładki Pomoc »
Kurs Video zobaczysz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolonych urządzeniach i aplikacjach obsługujących format MP4 (pliki spakowane w ZIP)
Recenzje książki: Nauka algorytmów. Poradnik pisania lepszego kodu (1)
Poniższe recenzje mogły powstać po przekazaniu recenzentowi darmowego egzemplarza poszczególnych utworów bądź innej zachęty do jej napisania np. zapłaty.
-
informatywkaa Obrusik Łucja
Książka jest idealna dla tych, co znają już podstawy programowania w języku Python i chcą ulepszyć swój kod o algorytmy szybsze czy o mniejszej złożoności pamięciowej lub czasowej. Każdy z kodów jest opisany krótko, zwięźle, a co najważniejsze - autor w całości wyczerpuje temat, nieraz ulepszając tłumaczenia o przykłady z życia czy czytelne grafy, a dodatkowo bardzo czytelny kod. Dodatkowym benefitem książki są również podsumowania i ćwiczenia, umieszczone na końcu każdego rozdziału, żeby czytelnik mógł przeczytać, co najważniejsze jeszcze raz oraz przetestować w praktyce zdobytą wiedzę. Książka oczywiście posiada również repozytorium, w którym dostępne są m.in. rozwiązania ćwiczeń z końca rozdziałów oraz kody użyte w książce. Odkryłam tę książkę idealnie przed kolokwium z algorytmów sortowania i wiem, że dzięki niej, z kolokwium uzyskam wysoki wynik, bo w końcu kod stał się dla mnie czytelny i logiczny. Polecam wszystkim, którzy niekiedy mają problem ze zrozumieniem kodu oraz wszytkim dociekliwym. Nie rozczarujecie się nią i często będziecie po nią sięgać.
Szczegóły książki
- Tytuł oryginału:
- Learning Algorithms: A Programmer's Guide to Writing Better Code
- Tłumaczenie:
- Tomasz Walczak
- ISBN Książki drukowanej:
- 978-83-283-8799-7, 9788328387997
- Data wydania książki drukowanej:
- 2022-04-05
- ISBN Ebooka:
- 978-83-283-8802-4, 9788328388024
- Data wydania ebooka:
-
2022-04-05
Data wydania ebooka często jest dniem wprowadzenia tytułu do sprzedaży i może nie być równoznaczna z datą wydania książki papierowej. Dodatkowe informacje możesz znaleźć w darmowym fragmencie. Jeśli masz wątpliwości skontaktuj się z nami sklep@helion.pl.
- Format:
- 168x237
- Numer z katalogu:
- 158430
- Rozmiar pliku Pdf:
- 6.7MB
- Rozmiar pliku ePub:
- 13.2MB
- Rozmiar pliku Mobi:
- 31.1MB
- Pobierz przykładowy rozdział PDF
- Przykłady na ftp
Ebook zawiera materiały dodatkowe, które możesz pobrać z serwera FTP - link znajdziesz na stronie redakcyjnej.
Spis treści książki
- Dla kogo przeznaczona jest ta książka?
- O kodzie
- Konwencje używane w tej książce
- Podziękowania
- Czym jest algorytm?
- Znajdowanie największej wartości w dowolnej liście
- Zliczanie kluczowych operacji
- Modele pozwalają prognozować wydajność algorytmu
- Znajdowanie dwóch największych wartości na dowolnej liście
- Algorytm pucharowy
- Złożoność czasowa i pamięciowa
- Podsumowanie
- Ćwiczenia
- Używanie modeli empirycznych do prognozowania wydajności
- Mnożenie można wykonywać szybciej
- Klasy złożoności
- Analiza asymptotyczna
- Zliczanie wszystkich operacji
- Zliczanie wszystkich bajtów
- Gdy zamykają się jedne drzwi, otwierają się inne
- Wyszukiwanie binarne w tablicy
- Prawie tak łatwe jak ?
- Dwie pieczenie na jednym ogniu
- Łączenie wszystkich elementów
- Dopasowywanie do krzywej a dolna i górna granica
- Podsumowanie
- Ćwiczenia
- Łączenie wartości z kluczami
- Funkcje haszujące i skróty
- Tablica z haszowaniem dla par (klucz, wartość)
- Wykrywanie i rozwiązywanie kolizji za pomocą próbkowania liniowego
- Tworzenie odrębnych łańcuchów dzięki listom powiązanym
- Usuwanie elementu z listy powiązanej
- Ocena wydajności
- Zwiększanie rozmiaru tablic z haszowaniem
- Analiza wydajności dynamicznych tablic z haszowaniem
- Haszowanie doskonałe
- Iteracyjne pobieranie par (klucz, wartość)
- Podsumowanie
- Ćwiczenia
- Kopce binarne typu max
- Wstawianie elementu (wartość, priorytet)
- Usuwanie wartości o najwyższym priorytecie
- Reprezentowanie kopca binarnego za pomocą tablicy
- Implementacja "wypływania" i "zatapiania"
- Podsumowanie
- Ćwiczenia
- Sortowanie przez przestawianie
- Sortowanie przez wybieranie
- Budowa algorytmu sortowania o złożoności kwadratowej
- Analizowanie wydajności sortowania przez wstawianie i sortowania przez wybieranie
- Rekurencja oraz podejście dziel i rządź
- Sortowanie przez scalanie
- Sortowanie szybkie
- Sortowanie przez kopcowanie
- Porównanie wydajności algorytmów o złożoności O(N log N)
- Algorytm timsort
- Podsumowanie
- Ćwiczenie
- Wprowadzenie
- Binarne drzewa poszukiwań
- Szukanie wartości w binarnym drzewie poszukiwań
- Usuwanie wartości z binarnego drzewa poszukiwań
- Przechodzenie drzewa binarnego
- Analiza wydajności binarnych drzew poszukiwań
- Samoorganizujące się drzewa binarne
- Analiza wydajności drzew samoorganizujących się
- Używanie drzewa binarnego jako tablicy symboli (klucz, wartość)
- Używanie drzewa binarnego jako kolejki priorytetowej
- Podsumowanie
- Ćwiczenia
- Grafy służą do wydajnego zapisywania przydatnych informacji
- Znajdowanie drogi w labiryncie za pomocą przeszukiwania w głąb
- Inna strategia - przeszukiwanie wszerz
- Grafy skierowane
- Grafy z wagami krawędzi
- Algorytm Dijkstry
- Najkrótsze ścieżki dla wszystkich par
- Algorytm Floyda-Warshalla
- Podsumowanie
- Ćwiczenia
- Wbudowane typy Pythona
- Implementowanie stosu w Pythonie
- Implementowanie kolejek w Pythonie
- Implementacje kopca i kolejki priorytetowej
- Dalsza nauka
Przedmowa
Wprowadzenie
1. Rozwiązywanie problemów
2. Analiza algorytmów
3. Lepsze życie dzięki lepszemu haszowaniu
4. Wędrówka po kopcu
5. Sortowanie bez tajemnic
6. Drzewa binarne - nieskończoność na wyciągnięcie ręki
7. Grafy - połącz punkty
8. Podsumowanie
O autorach
Oceny i opinie klientów: Nauka algorytmów. Poradnik pisania lepszego kodu George Heineman (0)
Weryfikacja opinii następuję na podstawie historii zamówień na koncie Użytkownika umieszczającego opinię. Użytkownik mógł otrzymać punkty za opublikowanie opinii uprawniające do uzyskania rabatu w ramach Programu Punktowego.