Algorytmy
W publikacjach zawartych w kategorii Algorytmy znajdziecie cały szereg użytecznych informacji dotyczących algorytmów i związanych z nimi struktur danych.
Poznacie takie pojęcia jak rekurencja, analiza złożoności czy algorytmy sortowania i przeszukiwania oraz metody numeryczne. Nauczycie się stosować w praktyce techniki programowania typu dziel i rządź, algorytmy żarłoczne oraz metody przeszukiwania tekstów takie jak brute-force, Rabina i Karpa czy K-M-P. Dzięki książkom o strukturach i algorytmach szybko opanujecie metody optymalizacji, sposoby kodowania i kompresji danych. Dane te pozwolą Wam szybko i bezboleśnie opanować najlepsze techniki programowania.
Andrew Johnson
Functional programming allows developers to divide programs into smaller, reusable components that ease the creation, testing, and maintenance of software as a whole. Combined with the power of Rust, you can develop robust and scalable applications that fulfill modern day software requirements. This book will help you discover all the Rust features that can be used to build software in a functional way.We begin with a brief comparison of the functional and object-oriented approach to different problems and patterns. We then quickly look at the patterns of control flow, data the abstractions of these unique to functional programming. The next part covers how to create functional apps in Rust; mutability and ownership, which are exclusive to Rust, are also discussed. Pure functions are examined next and you'll master closures, their various types, and currying. We also look at implementing concurrency through functional design principles and metaprogramming using macros. Finally, we look at best practices for debugging and optimization. By the end of the book, you will be familiar with the functional approach of programming and will be able to use these techniques on a daily basis.
Hands-On Game Development without Coding. Create 2D and 3D games with Visual Scripting in Unity
Lucas Bertolini
Hands-On Game Development without Coding is the first Visual Scripting book in the market. It was tailor made for a non programing audience who are wondering how a videogame is made.After reading this book you will be able to develop your own 2d and 3d videogames and use it on your presentations, to speed up your level design deliveries, test your game design ideas, work on your proofs of concept, or even doing it just for fun.The best thing about Hands-On Game Development without Coding is that you don’t need any previous knowledge to read and understand the process of creating a videogame. It is our main focus to provide you with the opportunity to create a videogame as easy and fast as possible.Once you go through the book, you will be able to create player input interaction, levels, object behaviours, enemy AI, creating your own UI and finally giving life to your game by building it.It’s Alive!
Abid Khan, Igor Kucherenko
Kotlin is an object-oriented programming language. The book is based on the latest version of Kotlin. The book provides you with a thorough understanding of programming concepts, object-oriented programming techniques, and design patterns. It includes numerous examples, explanation of concepts and keynotes. Where possible, examples and programming exercises are included. The main purpose of the book is to provide a comprehensive coverage of Kotlin features such as classes, data classes, and inheritance. It also provides a good understanding of design pattern and how Kotlin syntax works with object-oriented techniques. You will also gain familiarity with syntax in this book by writing labeled for loop and when as an expression. An introduction to the advanced concepts such as sealed classes and package level functions and coroutines is provided and we will also learn how these concepts can make the software development easy. Supported libraries for serialization, regular expression and testing are also covered in this book. By the end of the book, you would have learnt building robust and maintainable software with object oriented design patterns in Kotlin.
Information Theory. A Tutorial Introduction to the Principles and Applications of Information Theory
James V Stone
This book offers a comprehensive journey through the fascinating world of information theory, beginning with the fundamental question: what is information? Early chapters introduce key concepts like entropy, binary representation, and data compression, providing a clear and accessible foundation. Readers explore Shannon's source coding theorem and practical tools like Huffman coding to understand how information is quantified and optimized.Building on these basics, the book delves into advanced topics such as the noisy channel coding theorem, mutual information, and error correction techniques. It examines entropy in continuous systems, channel capacity, and rate-distortion theory, making complex ideas accessible through real-world examples. Connections between information and thermodynamics are also explored, including Maxwell’s Demon, the Landauer Limit, and the second law of thermodynamics.The final chapters tie information theory to biology and artificial intelligence, investigating its role in evolution, the human genome, and brain computation. With practical examples throughout, this book balances theoretical depth with hands-on learning, making it an essential resource for mastering information theory. A basic mathematical foundation will be beneficial but is not required to engage with the material.
Inteligentna sieć. Algorytmy przyszłości. Wydanie II
Douglas McIlwraith, Haralambos Marmanis, Dmitry Babenko
Określenie „inteligentna sieć” może przywodzić na myśl futurystyczną wizję maszyn przejmujących kontrolę nad światem i niszczących ludzkość, jednak w rzeczywistości jest związane z rozwojem technologii. Związane jest z powstawaniem oprogramowania, które potrafi się uczyć i reagować na zachowania użytkowników. Oznacza też projektowanie i implementację inteligencji maszynowej. Inteligentna sieć rozwija się tu i teraz — znajomość zagadnień uczenia maszynowego i budowy inteligentnych algorytmów staje się bardzo potrzebna inżynierom oprogramowania! Niniejsza książka jest przeznaczona dla osób, które chcą projektować inteligentne algorytmy, a przy tym mają podstawy z zakresu programowania, matematyki i statystyki. Przedstawiono tu schematy projektowe i praktyczne przykłady rozwiązań. Opisano algorytmy, które przetwarzają strumienie danych pochodzące z internetu, a także systemy rekomendacji i klasyfikowania danych za pomocą algorytmów statystycznych, sieci neuronowych i uczenia głębokiego. Mimo że przyswojenie tych zagadnień wymaga wysiłku, bardzo ułatwi implementację nowoczesnych, inteligentnych aplikacji! W tej książce między innymi: wprowadzenie do problemów algorytmów inteligentnych systemy rekomendacji i filtrowanie kolaboratywne wykorzystanie regresji logistycznej do wykrywania oszustw uczenie głębokie, uczenie na żywo i renesans sieci neuronowych podejmowanie decyzji perspektywy inteligentnej sieci Inteligentny algorytm wyławia perły w strumieniach danych! Dr Douglas McIlwraith jest ekspertem w dziedzinie uczenia maszynowego. Zajmuje się analizą danych w londyńskiej agencji reklamowej. Prowadził badania w dziedzinach systemów rozproszonych, robotyki i zabezpieczeń. Dr Haralambos Marmanis jest pionierem w obszarze technik uczenia maszynowego w rozwiązaniach przemysłowych. Od 25 lat rozwija profesjonalne oprogramowanie. Dmitry Babenko projektuje złożone systemy dla firm z takich branż, jak bankowość, ubezpieczenia, zarządzanie łańcuchem dostaw i analityka biznesowa.
Dr. Edward Lavieri Jr., Peter Verhas, Jason...
Java 9 and its new features add to the richness of the language; Java is one of the languages most used by developers to build robust software applications. Java 9 comes with a special emphasis on modularity with its integration with Jigsaw. This course is your one-stop guide to mastering the language.You'll be provided with an overview and explanation of the new features introduced in Java 9 and the importance of the new APIs and enhancements. Some new features of Java 9 are ground-breaking; if you are an experienced programmer, you will be able to make your enterprise applications leaner by learning these new features. You'll be provided with practical guidance in applying your newly acquired knowledge of Java 9 and further information on future developments of the Java platform. This course will improve your productivity, making your applications faster. Next, you'll go on to implement everything you've learned by building 10 cool projects. You will learn to build an email filter that separates spam messages from all your inboxes, a social media aggregator app that will help you efficiently track various feeds, and a microservice for a client/server note application, to name just a few.By the end of this course, you will be well acquainted with Java 9 features and able to build your own applications and projects.This Learning Path contains the best content from the following two recently published Packt products:• Mastering Java 9• Java 9 Programming Blueprints
Java 9 Data Structures and Algorithms. A step-by-step guide to data structures and algorithms
Debasish Ray Chawdhuri
Java 9 Data Structures and Algorithms covers classical, functional, and reactive data structures, giving you the ability to understand computational complexity, solve problems, and write efficient code. This book is based on the Zero Bug Bounce milestone of Java 9.We start off with the basics of algorithms and data structures, helping you understand the fundamentals and measure complexity. From here, we introduce you to concepts such as arrays, linked lists, as well as abstract data types such as stacks and queues. Next, we’ll take you through the basics of functional programming while making sure you get used to thinking recursively.We provide plenty of examples along the way to help you understand each concept. You will also get a clear picture of reactive programming, binary searches, sorting, search trees, undirected graphs, and a whole lot more!
Mayur Ramgir, Nick Samoylov
Finally, a book that focuses on the practicalities rather than theory of Java application performance tuning. This book will be your one-stop guide to optimize the performance of your Java applications.We will begin by understanding the new features and APIs of Java 9. You will then be taught the practicalities of Java application performance tuning, how to make the best use of garbage collector, and find out how to optimize code with microbenchmarking. Moving ahead, you will be introduced to multithreading and learning about concurrent programming with Java 9 to build highly concurrent and efficient applications. You will learn how to fine tune your Java code for best results. You will discover techniques on how to benchmark performance and reduce various bottlenecks in your applications. We'll also cover best practices of Java programming that will help you improve the quality of your codebase.By the end of the book, you will be armed with the knowledge to build and deploy efficient, scalable, and concurrent applications in Java.