Wydawca: Helion
Od początku swojej działalności wydawnictwo Helion wspiera rozwój specjalistów z szeroko pojętej branży IT. To doskonała baza wiedzy dla osób, które chcą poznać tajniki informatyki, programowania, sztucznej inteligencji, cyberbezpieczeństwa czy grafiki komputerowej i innych umiejętności związanych z nowoczesnymi technologiami.
Helion oferuje szeroki wybór książek oraz ebooków z różnych dziedzin informatyki, zawsze aktualnych i zgodnych z najnowszymi trendami technologicznymi.
Algorytmy, struktury danych i techniki programowania. Wydanie V
Piotr Wróblewski
Wprowadzenie do algorytmiki Tylko niezbędna teoria Gotowe rozwiązania w C++ Oto kolejne wydanie sprawdzonej, cenionej przez programistów, wykładowców oraz studentów książki, będącej podstawowym podręcznikiem do nauki algorytmiki. Jej autor zapozna Cię z elementarnymi zagadnieniami z tej dziedziny oraz wyjaśni, skąd bierze się tak szybki postęp w tej dyscyplinie nauki. Poznasz podstawowe struktury danych używane do rozwiązywania problemów algorytmicznych oraz nauczysz się je projektować w C++ z użyciem technik obiektowych i klas parametryzowanych. Podczas dalszej lektury poznasz takie pojęcia, jak rekurencja, analiza złożoności oraz algorytmy sortowania i przeszukiwania czy algorytmy numeryczne. Opanujesz metody optymalizacji algorytmów, sposoby kodowania i kompresji danych oraz elementy algorytmiki grafów. Przedstawione tu algorytmy są zilustrowane gotowymi kodami źródłowymi w C++ , co ułatwia zrozumienie poznawanych zagadnień. Przejrzysta forma, praktyczne przykłady oraz przystępny język sprawiają, że książka pozwala szybko i bez trudu opanować zarówno algorytmy, jak i struktury danych oraz najlepsze techniki programowania. Historia algorytmiki Struktury danych i ich implementacja Wprowadzenie do bibliotek STL, czyli algorytmy i struktury danych dla „leniuchów” Analiza złożoności algorytmów Wykorzystanie rekurencji i optymalizacja algorytmów Algorytmy sortowania i przeszukiwania Przeszukiwanie tekstów Zaawansowane techniki programowania Wykorzystanie grafów Algorytmy numeryczne Wprowadzenie do sztucznej inteligencji Kodowanie i kompresja danych Błyskawiczny kurs C++ z uwzględnieniem programowania obiektowego Poradnik kompilacji i uruchamiania programów konsolowych oraz graficznych w darmowych środowiskach IDE (GCC/Dev-C++, Microsoft Visual C++ z pakietu Visual Studio). Szybko i bezboleśnie opanuj wszystkie zagadnienia algorytmiki!
Algorytmy, struktury danych i techniki programowania. Wydanie VI
Piotr Wróblewski
Algorytmy i struktury danych - szybko, łatwo, skutecznie! Poznaj najważniejsze algorytmy i techniki programistyczne Naucz się skutecznie wykorzystywać typy i struktury danych Dowiedz się, jak w praktyce zastosować zdobytą wiedzę Algorytmika to dziedzina, która w ciągu ostatnich kilkudziesięciu lat dostarczyła wielu efektywnych narzędzi wspomagających rozwiązywanie różnorodnych zagadnień za pomocą komputera. Dla niektórych stanowi swego rodzaju książkę kucharską, do której sięgają jedynie po wybrane przepisy, a dla innych - pole do rozwinięcia umiejętności skutecznego rozwiązywania problemów i szkołę niestandardowego myślenia. Niezależnie od podejścia jest to dziedzina, z którą wypada się zapoznać, jeśli ma się ambicję zostać zawodowym programistą lub po prostu być osobą nowoczesną i wszechstronnie wykształconą. Ten przewodnik prezentuje szerokie spektrum zagadnień algorytmicznych, najważniejsze informacje na temat struktur danych, technik rekurencyjnych i złożonych metod algorytmicznych. Teoria jest tu poparta przykładowymi programami napisanymi w języku C++, łatwymi do analizy i skompilowania z wykorzystaniem standardowych narzędzi. Autor nie poprzestaje na suchym kodzie, lecz stara się przedstawić praktyczne zastosowanie opisywanych rozwiązań. Podręcznik przyda się zarówno osobom niemającym solidnych podstaw teoretycznych, jak i specjalistom, którzy zawodowo zajmują się programowaniem. Nowe wydanie zostało gruntownie odświeżone i poprawione, a listingi dostosowane do wymagań najnowszych kompilatorów. Książka zawiera opis zasad kompilacji dla środowiska Visual Studio 2017 i kilku wybranych środowisk używających GNU C++ (Dev-C++ i Cygwin). Historia algorytmiki Mechanizm rekurencji Systemy liczbowe i kodowanie Typy i struktury danych Analiza złożoności algorytmów Derekursywacja algorytmów Optymalizacja algorytmów Algorytmy sortowania i wyszukiwania Elementy algorytmiki grafów Sztuczna inteligencja Szyfrowanie i kompresja danych Biblioteka STL Jedyny podręcznik do algorytmiki, którego będziesz potrzebować!
Algorytmy. Struktury danych i złożoność obliczeniowa
Feliks Kurp
Algorytmy to skończone ciągi jasno zdefiniowanych czynności, prowadzących do wykonania określonych zadań. Niniejszy podręcznik, skupiony na algorytmach imperatywnych (od łacińskiego słowa imporo – rozkazywać) wprowadza podstawowe pojęcia algorytmiki niezbędne do nauki programowania. Uczy projektowania, zapisywania i analizy poprawności, jak również podstaw szacowania złożoności czasowej i pamięciowej algorytmów. Wraz z książką, którą trzymasz w ręku między innymi: Poznasz szereg ważnych algorytmów, jak wyszukiwanie binarne, sortowanie szybkie, algorytmy klasy dziel i zwyciężaj, algorytmy zachłanne etc. Nauczysz się korzystać ze stosowanych powszechnie w programowaniu struktur danych: tablic, słowników, list wiązanych, stosów, kolejek, drzew binarnych i grafów. Dowiesz się jak praktycznie stosować iterację i rekurencję w programowaniu. Zdobędziesz podstawy języka Java W książce zamieszczono szereg zadań, których rozwiązanie zmusza czytelnika do lepszego zrozumienia i pogłębienia jego umiejętności praktycznych. Książka jest bogato ilustrowana rysunkami poglądowymi i fragmentami kodów.
Algorytmy sztucznej inteligencji. Ilustrowany przewodnik
Rishal Hurbans
Sztuczna inteligencja ma umożliwiać wykorzystywanie danych i algorytmów do podejmowania lepszych decyzji, rozwiązywania trudnych problemów i automatyzowania złożonych zadań. Ma też zwiększać produktywność człowieka. Obecnie sztuczna inteligencja z rozmachem wkracza do kolejnych dziedzin. Budzi zachwyt, ale też kontrowersje i obawy. Nowe narzędzia, choćby były tworzone z najlepszymi intencjami, zawsze mogą zostać wykorzystane w niewłaściwy czy szkodliwy sposób. Oznacza to, że każdy, kto rozwija nowe technologie, powinien to robić odpowiedzialnie. Aby to było możliwe, trzeba dobrze zrozumieć podstawy działania sztucznej inteligencji - algorytmy. To praktyczny przewodnik po algorytmach sztucznej inteligencji. Skorzystają z niego programiści i inżynierowie, którzy chcą zrozumieć zagadnienia i algorytmy związane ze sztuczną inteligencją na podstawie praktycznych przykładów i wizualnych wyjaśnień. Książka pokazuje, jak radzić sobie z takimi zadaniami programistycznymi jak wykrywanie oszustw bankowych czy sterowanie pojazdem autonomicznym. Pierwsze rozdziały dotyczą podstawowych koncepcji i algorytmów i stają się punktem wyjścia do bardziej złożonych tematów: wydajnych algorytmów przeszukiwania oraz poszukiwania rozwiązań w środowisku konkurencyjnym. Przedstawiono tu zagadnienia uczenia maszynowego, w tym proces przygotowania danych, modelowania i testowania. Omówiono też zasady uczenia przez wzmacnianie za pomocą algorytmu Q-learning. W książce: kategorie i znaczenie algorytmów sztucznej inteligencji. inteligentne przeszukiwanie w procesie podejmowania decyzji algorytmy genetyczne i inteligencja rozproszona uczenie maszynowe i sieci neuronowe uczenie przez wzmacnianie Zrozum algorytmy, a pojmiesz istotę sztucznej inteligencji!
Algorytmy uczenia maszynowego. Zaawansowane techniki implementacji
Giuseppe Bonaccorso
Imponujący rozwój standardowych algorytmów przy ciągłej obniżce cen sprzętu i udostępnianiu coraz to szybszych komponentów przyczynił się do zrewolucjonizowania wielu gałęzi przemysłu. Obecnie uczenie maszynowe pozwala automatyzować procesy, które do niedawna musiały być zarządzane przez człowieka. Zadania, które jeszcze dekadę temu stanowiły nieprzekraczalną przeszkodę, dziś są wykonywane przez zwykły komputer osobisty. W efekcie dzięki technologii oraz dostępnym wysokopoziomowym otwartym platformom każdy, kto zainteresuje się uczeniem maszynowym, może projektować i wdrażać niezwykle potężne modele. Celem tej książki jest przybliżenie profesjonalistom tajników złożonych algorytmów uczenia maszynowego i zasad ich stosowania w praktyce. Poza praktycznymi informacjami dotyczącymi działania algorytmów i ich wdrożeń znalazły się tu również niezbędne podstawy teoretyczne. Opisano klasyczne modele uczenia nadzorowanego, nienadzorowanego i półnadzorowanego. Wskazano, w jakich sytuacjach okazują się one najbardziej przydatne. Zaprezentowano techniki wydobywania danych za pomocą modeli bayesowskich, algorytmu MCMC, a także dzięki stosowaniu ukrytych modeli Markowa. Omówiono zestaw przydatnych do uczenia maszynowego narzędzi, takich jak biblioteki: scikit-learn, Keras i TensorFlow. Najciekawsze zagadnienia: najważniejsze koncepcje teoretyczne uczenia maszynowego modelowanie probabilistyczne i uczenie hebbowskie zaawansowane koncepcje modeli neuronowych modele generatywne, takie jak splotowe sieci GAN i sieci Wassersteina głębokie sieci przekonań zaawansowane algorytmy: TD(tylda), aktor-krytyk, SARSA i Q-uczenie Uczenie maszynowe - już dziś zaimplementuj rozwiązania przyszłości!
Robert Sedgewick, Kevin Wayne
Nie odkrywaj koła na nowo — sprawdź gotowe rozwiązania! Jak oceniać wydajność algorytmów? Jak wydajnie sortować elementy? Jak kompresować dane? Algorytmy od zawsze porównywane były do przepisów kucharskich. Z celnością tego porównania trudno dyskutować, na pewno jednak przesolenie zupy ma zupełnie inne konsekwencje niż błędnie opracowany lub zaimplementowany algorytm. To właśnie algorytmy decydują o czasie wykonania skomplikowanych operacji przez programy komputerowe, a ich odpowiednia implementacja może niejednokrotnie decydować o sukcesie lub porażce projektu wartego fortunę. Dzięki tej książce masz szansę uniknąć typowych programistycznych błędów i porażek. Jej lektura zapozna Cię z najpopularniejszymi algorytmami, ich licznymi zaletami oraz słabymi stronami. Sprawdzisz, do czego można je zastosować, a w jakich miejscach lepiej zrezygnować z ich wykorzystania. Ponadto nauczysz się analizować działanie algorytmów, mierzyć ich wydajność oraz dobierać dane testowe. W książce zostały omówione klasyczne algorytmy sortowania, wyszukiwania, operacji na grafach oraz kompresji danych. Jej ogromnym atutem są przykładowe implementacje algorytmów w języku JAVA oraz to, że przedstawiony kod jest gotowy do natychmiastowego użycia! Pozycja ta jest obowiązkową lekturą dla każdego programisty, któremu zależy na najwyższej wydajności tworzonych rozwiązań. Podstawowe pojęcia Struktura programu w języku JAVA Instrukcje, typy danych, wyrażenia w języku JAVA Korzystanie z abstrakcyjnych typów danych Stosy, kolejki Analiza algorytmów Algorytmy sortowania i wyszukiwania Wykorzystanie grafów Znajdowanie najkrótszej ścieżki Operacja na łańcuchach znaków Algorytmy kompresji danych Nie trać czasu i energii — korzystaj ze sprawdzonych rozwiązań!
Alicja i Bob. Bezpieczeństwo aplikacji w praktyce
Tanya Janca
Media bezustannie donoszą o spektakularnych wpadkach w zakresie bezpieczeństwa aplikacji. Konsekwencją udanego ataku bywają straty finansowe, kompromitacja, niekiedy zagrożenie bezpieczeństwa narodowego. Aby tego uniknąć, wszyscy zainteresowani - od architekta po użytkownika - powinni stale uaktualniać i stosować w praktyce zasady bezpieczeństwa systemów informatycznych. Jednak szczególna odpowiedzialność spoczywa na projektantach i programistach aplikacji, gdyż podejmowanie działań zabezpieczających na wczesnych etapach opracowywania oprogramowania daje o wiele lepsze rezultaty niż rozwiązywanie problemów w fazie testowania. To książka przeznaczona dla programistów, projektantów aplikacji i osób odpowiedzialnych za bezpieczeństwo informacji. Jest napisana w sposób bezpośredni, przystępny, bez fachowego żargonu i zawiłości. Zawarte w niej koncepcje bezpiecznego projektowania i programowania wzbogacono o praktyczne kody, ćwiczenia i przykłady. Aby ułatwić zrozumienie przedstawionych treści, posłużono się przykładem Alicji i Boba, których życie zawodowe, a także podejmowane przez nich przedsięwzięcia i realizowane zadania wpływają na decyzje dotyczące bezpieczeństwa aplikacji. Znajdziemy tu również odpowiedzi na wiele pytań nurtujących osoby zaczynające pracę w tej dziedzinie, a liczne wskazówki, wytyczne i opisy dobrych praktyk z pewnością ułatwią poprawne stosowanie zasad bezpieczeństwa w tworzonym oprogramowaniu. W książce między innymi: najważniejsze zasady bezpieczeństwa w koncepcjach projektowych wytyczne bezpiecznego programowania modelowanie zagrożeń i testowanie współczesne zagrożenia dla bezpieczeństwa aplikacji i metody obrony przed nimi protokoły bezpieczeństwa dla programistów i personelu informatycznego Alicja i Bob już to wiedzą. Bezpieczeństwo jest bezcenne!
Amazon Web Services w akcji. Wydanie II
Andreas Wittig, Michael Wittig
Platforma Amazon Web Services jest uważana za największą i najdojrzalszą chmurę obliczeniową. Oferuje ponad setkę gotowych usług, praktycznie niewyczerpywalne zasoby mocy obliczeniowej, nieograniczone bezpieczne magazynowanie oraz pierwszorzędne możliwości automatyzacji. Jest przy tym nieustannie unowocześniana i udostępnia coraz to nowsze możliwości. Pozwala na tworzenie i utrzymanie aplikacji w elastyczny i niezawodny sposób. Dla wielu organizacji decyzja o migracji infrastruktury informatycznej na platformę AWS okazała się strzałem w dziesiątkę. Aby z powodzeniem przeprowadzić taką transformację, konieczne jest uzyskanie wiedzy na temat platformy Amazon Web Services i zrozumienie związanych z nią koncepcji. To drugie, uaktualnione wydanie kompletnego wprowadzenia do wdrażania aplikacji w chmurze AWS. Dokładnie opisano w nim usługi dostarczające instancje obliczeniowe, przestrzeń na dane i zapewniające pracę w sieci. Wyjaśniono koncepcje niezbędne do uruchomienia aplikacji WWW na platformie AWS: równoważenie obciążenia, maszyny wirtualne, magazynowanie plików, systemy baz danych i buforowanie w pamięci. Przedstawiono też zagadnienia wysokiej dostępności, odporności na błędy oraz dynamicznego skalowania infrastruktury. Dużą zaletą książki jest omówienie zautomatyzowanego zarządzania infrastrukturą za pomocą usługi AWS CloudFormation. Sporo uwagi poświęcono także różnym aspektom bezpieczeństwa w chmurze. Najciekawsze zagadnienia: koncepcje związane z Amazon Web Services, w tym maszyny wirtualne i EC2 automatyzacja infrastruktury i wdrażanie oprogramowania na platformie AWS skalowalność i bezpieczeństwo infrastruktury w chmurze AWS najprzydatniejsze usługi AWS: S3, EBS, EFS, RDS i wiele innych wysoka dostępność i niezawodność infrastruktury tworzenie odpornych na błędy usług sieciowych Amazon Web Services: już dziś zaprojektuj system przyszłości! Bracia Andreas Wittig i Michael Wittig są inżynierami oprogramowania. Stosują podejście DevOps i specjalizują się we wdrażaniu rozwiązań opartych na chmurze AWS. Koncentrują się na zagadnieniach infrastruktury jako kodu, ciągłego wdrażania, przetwarzania bezserwerowego, zabezpieczeń i tworzenia produktów typu SaaS. Obaj zdobyli certyfikaty AWS Certified Solutions Architect - Professional i AWS Certified DevOps Engineer - Professional. Ich wspólną pasją jest dzielenie się wiedzą.