Algorytmy
Mastering Spark for Data Science. Lightning fast and scalable data science solutions
Andrew Morgan, Antoine Amend, Matthew Hallett, David...
Data science seeks to transform the world using data, and this is typically achievedthrough disrupting and changing real processes in real industries. In order to operate at this level you need to build data science solutions of substance –solutions that solve real problems. Spark has emerged as the big data platform of choice for data scientists due to its speed, scalability, and easy-to-use APIs.This book deep dives into using Spark to deliver production-grade data sciencesolutions. This process is demonstrated by exploring the construction of a sophisticated global news analysis service that uses Spark to generate continuous geopolitical and current affairs insights.You will learn all about the core Spark APIs and take a comprehensive tour of advanced libraries, including Spark SQL, Spark Streaming, MLlib, and more.You will be introduced to advanced techniques and methods that will help you to construct commercial-grade data products. Focusing on a sequence of tutorials that deliver a working news intelligence service, you will learn about advanced Spark architectures, how to work with geographic data in Spark, and how to tune Spark algorithms so they scale linearly.
Matematyczne szkiełko i oko. Mniej i bardziej poważne zastosowania matmy
Dariusz Laskowski
Nie ma litości, jest matematyka! Matematyka to potęga do potęgi Czy wiesz, że matematyka to nie czarna magia, tylko dowcip, inteligencja i odrobina tajemniczości w czystej formie? Tak, tak. To nie żadna ściema czy inna niewiadoma. Zamiast włączać telewizor albo odpalać kolejną gierkę w sieci, otwórz tę książkę. Dzięki odkryciom matematyki przekonasz się, jak można odpowiedzieć na niezwykle frapujące pytania z codziennego życia - także Twojego własnego. Ile liczb mieści się na końcu szpilki? Na czym polega geometria bazgrołów? Co język C++ ma wspólnego z ponętną Moniką? Ile kompotu można wypić, gdy pan Czesław ma kolonoskopię? I wreszcie wyższa szkoła jazdy: jak odkodować PIN do lodówki algorytmem spigot? Okazuje się, że nieznana kraina faktów, teorii, hipotez, przełomowych eksperymentów i odkryć, dowodów, pojęć i matematycznych idei to nic innego jak nasze życie. A w życiu, jak w matematyce - jeden błąd może popsuć wszystko. Lepiej więc wiedzieć więcej i spojrzeć w zagadkowe oczy matmy. Nie taki X straszny, jak go malują…
Matematyka dla programistów Java
Jacek Piechota
Matematyka w Javie? Nic trudnego! Przypomnij sobie reguły i działania matematyczne Poznaj w praktyce funkcje matematyczne języka Java Zamieniaj wzory i problemy matematyczne na algorytmy Naucz się wizualizować wyniki swoich obliczeń Matematyka nie jest ulubioną dziedziną wiedzy większości ludzi, a społeczność informatyczna nie stanowi tu wyjątku. Funkcje matematyczne, obliczenia statystyczne, działania na macierzach - każda z tych czynności może wywołać popłoch nawet wśród najbardziej doświadczonych programistów, z wieloletnim stażem w zawodzie. Jest tak, mimo że zarówno zasada działania komputerów, jak i języki programowania opierają się właśnie na królowej nauk. Na szczęście na rynku jest ta książka! Szybko wprowadzi Cię ona w świat obliczeń matematycznych wykonywanych za pomocą komputera. Na praktycznych przykładach, opracowanych w popularnym języku Java, przedstawia sposoby przeprowadzania różnych działań i przekształceń, stosowania algorytmów i wizualizowania otrzymanych wyników. Przestań się więc martwić i zostań prawdziwym matematycznym ninja! Podstawy matematyki i teorii informacji Działania na liczbach binarnych i heksadecymalnych Kombinatoryka i prawdopodobieństwo Działania na wektorach i macierzach Przetwarzanie liczb zespolonych Wykresy krzywych Chaos, fraktale i paradoksy Działania matematyczne? Obliczenia naukowe? Wypróbuj to w Javie!
Dr. Yeasmin Khandakar, Dr. Roman Ahmed, Rob...
Modern Time Series Analysis with R is a comprehensive, hands-on guide to mastering the art of time series analysis using the R programming language. Written by leading experts in applied statistics and econometrics, this book helps data scientists, analysts, and developers bridge the gap between traditional statistical theory and practical business applications.Starting with the foundations of R and tidyverse, you’ll explore the core components of time series data, data wrangling, and visualization techniques. The chapters then guide you through key modeling approaches, ranging from classical methods like ARIMA and exponential smoothing to advanced computational techniques, such as machine learning, deep learning, and ensemble forecasting.Beyond forecasting, you’ll discover how time series can be applied to causal inference, anomaly detection, change point analysis, and multiple time series modeling. Practical examples and reproducible code will empower you to assess business problems, choose optimal solutions, and communicate results effectively through dynamic R-based reporting.By the end of this book, you’ll be confident in applying modern time series methods to real-world data, delivering actionable insights for strategic decision-making in business, finance, technology, and beyond.
Nauka algorytmów. Poradnik pisania lepszego kodu
George Heineman
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
Nauka programowania. Rusz głową!
Eric Freeman
Przewodnik po kodowaniu i myśleniu komputacyjnym Programista to bardzo szczególny typ specjalisty. Jeśli uważasz, że myśli w inny sposób niż tak zwani normalni ludzie, to masz rację. Dobra wiadomość jest taka, że i Ty możesz się nauczyć myślenia komputacyjnego - umiejętności, która się przydaje niezależnie od charakteru rozwiązywanego problemu, środowiska czy języka programowania. Tylko w ten sposób można od początku nauki programowania pisać przejrzysty, uporządkowany, znakomity kod, zgodny z najlepszymi praktykami wypracowanymi przez mistrzów. Innymi słowy: pracować jak profesjonalny programista. Ta książka jest niezwykłym podręcznikiem programowania. Być może wygląda nieco dziwacznie, ale prędko się przekonasz, że to podręcznik jest wyjątkowo skuteczny: w końcu jego formuła została opracowana na podstawie najlepszych osiągnięć neurologii i kognitywistyki. W ten sposób Twój mózg się zaangażuje i błyskawicznie przyswoi sobie zasady programowania w Pythonie. Autor wykorzystał oczywistą prawdę, że najszybciej uczymy się wtedy, gdy uwzględnimy specyfikę działania własnego mózgu! Najpierw więc się zainteresujesz, potem zaangażujesz, wreszcie przygotujesz sobie warsztat pracy, czyli zainstalujesz Pythona. Później zaczniesz ćwiczyć myślenie komputacyjne i oczywiście napiszesz swój pierwszy program. A dalej będzie coraz ciekawiej... W tej książce między innymi: Istotne koncepcje programistyczne Zasady programowania w Pythonie Funkcje i rekurencja Programowanie obiektowe Tworzenie API dla aplikacji internetowych Widgety i zdarzenia Neurony płoną. Emocje szaleją. Tak napiszesz kod godny mistrza!
Od matematyki do programowania. Wszystko, co każdy programista wiedzieć powinien
Wiesław Rychlicki
"Wędrówka do źródła kodu" Popularna definicja programowania określa je jako "proces projektowania, tworzenia, testowania i utrzymywania kodu źródłowego programów komputerowych lub urządzeń mikroprocesorowych". Wspomniany kod źródłowy może być napisany w różnych językach programowania, z użyciem określonych reguł. Każdy z języków pozwala na wykorzystanie odpowiednich stylów programowania, a wybór konkretnego języka może zależeć od indywidualnych upodobań, polityki firmy lub funkcji, jakie końcowa aplikacja ma realizować. W zasadzie nie istnieje odpowiedź na pytanie, który z języków jest najlepszy. Dlatego w tej książce nie znajdziesz typowego abecadła. Zapoznasz się za to z danym problemem, a następnie programem komputerowym służącym do jego rozwiązania. Jeśli chcesz wreszcie rozpocząć przygodę z programowaniem i nawiązać dialog ze swoim komputerem, ta publikacja jest właśnie dla Ciebie! Różnorodne obliczenia, mniej lub bardziej skomplikowane, znane Ci z lekcji matematyki lub nieznacznie wykraczające poza program nauczania, stanowią tutaj podstawę do zdobywania informacji na temat programowania w wybranych językach. Wybrane zadania zaprezentowane są w popularnych językach programowania: Pascal, C i C++. Stosowane algorytmy wymagają także sięgnięcia po różne funkcje matematyczne, dostępne standardowo w bibliotekach języków programowania oraz konstruowane na podstawie wzorów. Zostań informatycznym poliglotą. Programuj każdego dnia!
PHP 7. Algorytmy i struktury danych
Mizanur Rahman
Algorytmy i struktury danych leżą u podstaw programowania. Zrozumienie zasad rządzących tymi zagadnieniami jest koniecznym warunkiem opracowania prawidłowej i efektywnej aplikacji. Niestety, wielu programistów uznaje tę tematykę za zbyt złożoną czy zbyt banalną i nie poświęca jej wystarczającej uwagi. Takie podejście często się mści: modne narzędzia, frameworki czy technologie deweloperskie nie zapewnią sukcesu, jeśli projektant nie przemyśli zastosowanych algorytmów i struktur danych. Z tego obowiązku nie zwalniają nawet narzędzia wbudowane w język PHP! Jeśli chcesz biegle posługiwać się algorytmami, wziąłeś do ręki właściwą książkę! Przedstawiono tu podstawy implementacji algorytmów i struktur danych w PHP, dzięki czemu poznasz rodzaje struktur i powody, dla których warto je wybierać, a także dowiesz się, gdzie i kiedy należy stosować poszczególne algorytmy. Znajdziesz tu dużo praktycznych przykładów, które uzupełniono rysunkami i wyczerpującym komentarzem. Przystępne i zrozumiałe wyjaśnienia ułatwią Ci szybkie przyswojenie prezentowanych koncepcji, nawet tak złożonych, jak programowanie dynamiczne, algorytmy zachłanne, algorytmy z nawrotami czy funkcyjne struktury danych. Najważniejsze zagadnienia: podstawy analizy algorytmów i struktur danych, tablice, listy i drzewa, stosy, kolejki i algorytmy rekurencyjne, sortowanie, wyszukiwanie, sterty i kopce, wsparcie ze strony PHP, w tym biblioteki PECL i Tarsana. Algorytmy: poznaj, zrozum, stosuj! Mizanur Rahman od 14 lat rozwija aplikacje w PHP. Jest znawcą Laravela, CodeIgnitera, Symfony, JavaScriptu, C, C++, Javy, Node.js, Socket.io i React.js. Jest właścicielem dwóch startupów technologicznych. Jest osobą niezwykle zaangażowaną w życie kilku społeczności programistycznych, takich jak PHPXperts, Agile Bangladesh czy Project Euler. Regularnie wygłasza referaty na różnych konferencjach i seminariach technologicznych. Wraz z żoną Nishą i dwoma synami, Adiyanem i Mikhaelem, mieszka w Dhace w Bangladeszu. Jego pasją są podróże po świecie.