Search results for "java exercises with data structures and algorithms"
Items we need to order for you

Algorithms - ESA '94
This volume presents the proceedings of the Second Annual European Symposium on Algorithms (ESA '94), held near Utrecht, The Netherlands in September 1994. ESA is the premier European conference on algorithms.The 42 papers presented were selected from a total of 159 submissions and reflect many of the current directions in algorithm research. The volume is organized into chapters on automatic graph drawing and rendering, spanners and Steiner trees, efficient data structures and complexity analysis, graph algorithms, distributed algorithms, computational geometry and its applications, operations research and combinatorial optimization, parallel computation and interconnection networks, complexity theory, and text processing
R 1,594.28

Algorithms and Computation
This book constitutes the refereed proceedings of the 25th International Symposium on Algorithms and Computation, ISAAC 2014, held in Jeonju, Korea, in December 2014. The 60 revised full papers presented together with 2 invited talks were carefully reviewed and selected from 171 submissions for inclusion in the book. The focus of the volume in on the following topics: computational geometry, combinatorial optimization, graph algorithms: enumeration, matching and assignment, data structures and algorithms, fixed-parameter tractable algorithms, scheduling algorithms, computational complexity, computational complexity, approximation algorithms, graph theory and algorithms, online and approximation algorithms, and network and scheduling algorithms.
R 4,354.20

Data Science Algorithms in a Week
Build a strong foundation of machine learning algorithms in 7 daysKey FeaturesUse Python and its wide array of machine learning libraries to build predictive models Learn the basics of the 7 most widely used machine learning algorithms within a weekKnow when and where to apply data science algorithms using this guideBook DescriptionMachine learning applications are highly automated and self-modifying, and continue to improve over time with minimal human intervention, as they learn from the trained data. To address the complex nature of various real-world data problems, specialized machine learning algorithms have been developed. Through algorithmic and statistical analysis, these models can be leveraged to gain new knowledge from existing data as well.Data Science Algorithms in a Week addresses all problems related to accurate and efficient data classification and prediction. Over the course of seven days, you will be introduced to seven algorithms, along with exercises that will help you understand different aspects of machine learning. You will see how to pre-cluster your data to optimize and classify it for large datasets. This book also guides you in predicting data based on existing trends in your dataset. This book covers algorithms such as k-nearest neighbors, Naive Bayes, decision trees, random forest, k-means, regression, and time-series analysis.By the end of this book, you will understand how to choose machine learning algorithms for clustering, classification, and regression and know which is best suited for your problemWhat you will learnUnderstand how to identify a data science problem correctlyImplement well-known machine learning algorithms efficiently using PythonClassify your datasets using Naive Bayes, decision trees, and random forest with accuracyDevise an appropriate prediction solution using regressionWork with time series data to identify relevant data events and trendsCluster your data using the k-means algorithmWho this book is forThis book is for aspiring data science professionals who are familiar with Python and have a little background in statistics. You’ll also find this book useful if you’re currently working with data science algorithms in some capacity and want to expand your skill set
R 1,498.00

Algorithms and Complexity
This book constitutes the refereed proceedings of the Third Italian Conference on Algorithms and Complexity, CIAC'97, held in Rome, Italy in March 1997.The 25 revised full papers included in the volume were carefully selected from a total of 74 submissions; also included is an invited paper and an invited abstract. All in all, the papers present an interesting snapshot of current research activities and recent results in theory and applications of sequential, distributed, and parallel algorithms, data structures, and computational complexity.
R 1,560.93

Introduction To The Analysis Of Algorithms, An (3rd Edition)
A successor to the first and second editions, this updated and revised book is a leading companion guide for students and engineers alike, specifically software engineers who design algorithms. While succinct, this edition is mathematically rigorous, covering the foundations for both computer scientists and mathematicians with interest in the algorithmic foundations of Computer Science.Besides expositions on traditional algorithms such as Greedy, Dynamic Programming and Divide & Conquer, the book explores two classes of algorithms that are often overlooked in introductory textbooks: Randomised and Online algorithms — with emphasis placed on the algorithm itself. The book also covers algorithms in Linear Algebra, and the foundations of Computation.The coverage of Randomized and Online algorithms is timely: the former have become ubiquitous due to the emergence of cryptography, while the latter are essential in numerous fields as diverse as operating systems and stock market predictions.While being relatively short to ensure the essentiality of content, a strong focus has been placed on self-containment, introducing the idea of pre/post-conditions and loop invariants to readers of all backgrounds, as well as all the necessary mathematical foundations. The programming exercises in Python will be available on the web (see www.msoltys.com/book for the companion web site).
R 3,513.76

R 1,293.00

Algorithms and Discrete Applied Mathematics
This book collects the refereed proceedingsof the Second International Conference on Algorithms and Discrete AppliedMathematics, CALDAM 2016, held in Thiruvananthapuram, India, in February 2016.The volume contains 30 full revised papers from 90 submissions along with 1invited talk presented at the conference. The conference focuses on topicsrelated to efficient algorithms and data structures, their analysis (boththeoretical and experimental) and the mathematical problems arising thereof,and new applications of discrete mathematics, advances in existing applicationsand development of new tools for discrete mathematics.
R 2,187.26

Algorithms for Constructing Computably Enumerable Sets
Logicians have developed beautiful algorithmic techniques for the construction of computably enumerable sets. This textbook presents these techniques in a unified way that should appeal to computer scientists.Specifically, the book explains, organizes, and compares various algorithmic techniques used in computability theory (which was formerly called "classical recursion theory"). This area of study has produced some of the most beautiful and subtle algorithms ever developed for any problems. These algorithms are little-known outside of a niche within the mathematical logic community. By presenting them in a style familiar to computer scientists, the intent is to greatly broaden their influence and appeal.Topics and features:· All other books in this field focus on the mathematical results, rather than on the algorithms.· There are many exercises here, most of which relate to details of the algorithms.· The proofs involving priority trees are written here in greater detail, and with more intuition, than can be found elsewhere in the literature.· The algorithms are presented in a pseudocode very similar to that used in textbooks (such as that by Cormen, Leiserson, Rivest, and Stein) on concrete algorithms.· In addition to their aesthetic value, the algorithmic ideas developed for these abstract problems might find applications in more practical areas.Graduate students in computer science or in mathematical logic constitute the primary audience. Furthermore, when the author taught a one-semester graduate course based on this material, a number of advanced undergraduates, majoring in computer science or mathematics or both, took the course and flourished in it.Kenneth J. Supowit is an Associate Professor Emeritus, Department of Computer Science & Engineering, Ohio State University, Columbus, Ohio, US.
R 2,232.40

Distributed Algorithms
This volume contains the proceedings of the 4th International Workshop on Distributed Algorithms, held near Bari, Italy, September 24-26, 1990. The workshop was a forum for researchers, students and other interested persons to discuss recent results and trends in the design and analysis of distributed algorithms for communication networks and decentralized systems. The volume includes all 28 papers presented at the workshop, covering current research in such aspects of distributed algorithm design as distributed combinatorial algorithms, distributed algorithms on graphs, distributed algorithms for new types of decentralized systems, distributed data structures, synchronization and load-balancing, distributed algorithms for control and communication, design and verification of network protocols, routing algorithms, fail-safe and fault-tolerant distributed algorithms, distributed database techniques, algorithms for transaction management and replica control, and other related topics.
R 1,579.58

Introduction To The Analysis Of Algorithms, An (2nd Edition)
A successor to the first edition, this updated and revised book is a great companion guide for students and engineers alike, specifically software engineers who design reliable code. While succinct, this edition is mathematically rigorous, covering the foundations of both computer scientists and mathematicians with interest in algorithms.Besides covering the traditional algorithms of Computer Science such as Greedy, Dynamic Programming and Divide & Conquer, this edition goes further by exploring two classes of algorithms that are often overlooked: Randomised and Online algorithms — with emphasis placed on the algorithm itself. The coverage of both fields are timely as the ubiquity of Randomised algorithms are expressed through the emergence of cryptography while Online algorithms are essential in numerous fields as diverse as operating systems and stock market predictions.While being relatively short to ensure the essentiality of content, a strong focus has been placed on self-containment, introducing the idea of pre/post-conditions and loop invariants to readers of all backgrounds. Containing programming exercises in Python, solutions will also be placed on the book's website.
R 2,121.17

Graph Algorithms
Learn how graph algorithms can help you leverage relationships within your data to develop intelligent solutions and enhance your machine learning models. With this practical guide, developers and data scientists will discover how graph analytics deliver value, whether they’re used for building dynamic network models or forecasting real-world behavior. Mark Needham and Amy Hodler from Neo4j explain how graph algorithms describe complex structures and reveal difficult-to-find patterns—from finding vulnerabilities and bottlenecks to detecting communities and improving machine learning predictions. You’ll walk through hands-on examples that show you how to use graph algorithms in Apache Spark and Neo4j, two of the most common choices for graph analytics. Learn how graph analytics reveal more predictive elements in today’s data Understand how popular graph algorithms work and how they’re applied Use sample code and tips from more than 20 graph algorithm examples Learn which algorithms to use for different types of questions Explore examples with working code and sample datasets for Spark and Neo4j Create an ML workflow for link prediction by combining Neo4j and Spark
R 1,824.00


R 3,777.62

Design and Analysis of Algorithms
The text covers important algorithm design techniques, such as greedy algorithms, dynamic programming, and divide-and-conquer, and gives applications to contemporary problems. Techniques including Fast Fourier transform, KMP algorithm for string matching, CYK algorithm for context free parsing and gradient descent for convex function minimization are discussed in detail. The book's emphasis is on computational models and their effect on algorithm design. It gives insights into algorithm design techniques in parallel, streaming and memory hierarchy computational models. The book also emphasizes the role of randomization in algorithm design, and gives numerous applications ranging from data-structures such as skip-lists to dimensionality reduction methods.
R 2,720.36

Learning Algorithms
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. Software developers, testers, and maintainers will discover how algorithms solve computational problems creatively.Each chapter builds on earlier chapters through eye-catching visuals and a steady rollout of essential concepts, including an algorithm analysis to classify the performance of every algorithm presented in the book. At the end of each chapter, you'll get to apply what you've learned to a novel challenge problem -- simulating the experience you might find in a technical code interview.With this book, you will:Examine fundamental algorithms central to computer science and software engineeringLearn common strategies for efficient problem solving -- such as divide and conquer, dynamic programming, and greedy approachesAnalyze code to evaluate time complexity using big O notationUse existing Python libraries and data structures to solve problems using algorithmsUnderstand the main steps of important algorithms
R 1,824.00

Designing Hexagonal Architecture with Java
A practical guide for software architects and Java developers to build cloud-native hexagonal applications using Java and Quarkus to create systems that are easier to refactor, scale, and maintainKey FeaturesLearn techniques to decouple business and technology code in an applicationApply hexagonal architecture principles to produce more organized, coherent, and maintainable softwareMinimize technical debts and tackle complexities derived from multiple teams dealing with the same code baseBook DescriptionHexagonal architecture enhances developers' productivity by decoupling business code from technology code, making the software more change-tolerant, and allowing it to evolve and incorporate new technologies without the need for significant refactoring. By adhering to hexagonal principles, you can structure your software in a way that reduces the effort required to understand and maintain the code.This book starts with an in-depth analysis of hexagonal architecture's building blocks, such as entities, use cases, ports, and adapters. You'll learn how to assemble business code in the Domain hexagon, create features by using ports and use cases in the Application hexagon, and make your software compatible with different technologies by employing adapters in the Framework hexagon. Moving on, you'll get your hands dirty developing a system based on a real-world scenario applying all the hexagonal architecture's building blocks. By creating a hexagonal system, you'll also understand how you can use Java modules to reinforce dependency inversion and ensure the isolation of each hexagon in the architecture. Finally, you'll get to grips with using Quarkus to turn your hexagonal application into a cloud-native system.By the end of this hexagonal architecture book, you'll be able to bring order and sanity to the development of complex and long-lasting applications.What you will learnFind out how to assemble business rules algorithms using the specification design patternCombine domain-driven design techniques with hexagonal principles to create powerful domain modelsEmploy adapters to make the system support different protocols such as REST, gRPC, and WebSocketCreate a module and package structure based on hexagonal principlesUse Java modules to enforce dependency inversion and ensure isolation between software componentsImplement Quarkus DI to manage the life cycle of input and output portsWho this book is forThis book is for software architects and Java developers who want to improve code maintainability and enhance productivity with an architecture that allows changes in technology without compromising business logic, which is precisely what hexagonal architecture does. Intermediate knowledge of the Java programming language and familiarity with Jakarta EE will help you to get the most out of this book.
R 1,596.00


R 3,025.42

Algorithms and Complexity
The papers in this volume were presented at the 5th Italian Conference on AlgorithmsandComplexity(CIAC2003). Theconferencetookplaceduring May 28-30, 2003, in Rome, Italy, at the Conference Centre of the University of Rome "La Sapienza. " CIAC started in 1990 as a national meeting to be held every three years for Italian researchers in algorithms, data structures, complexity theory, and parallelanddistributedcomputing. Duetoasigni?cantparticipationofforeign researchers, starting from the second edition, CIAC evolved into an international conference. However,alltheeditionsofCIAChavebeenheldinRome. The proceedings of CIAC were published by World Scienti?c for the ?rst edition and by Springer-Verlag in the Lecture Notes in Computer Science series (volumes 778,1203and1767)forthesubsequenteditions. Aselectionofthepapersofthe fourth edition was published in a special issue of Theoretical Computer Science Vol. 285(1),2002. Thisyearweexpecttopublishanextendedversionofselected papers presented at the conference in a special issue of the journal Theory of Computing Systems.In response to the call for papers for CIAC 2003, 57 papers were subm- ted, from which the Program Committee selected 23 papers for presentation at theconferencefrom18countries. Eachpaperwasevaluatedbyatleastthree Program Committee members with the help of 63 external reviewers. In addition to the selected papers, the Organizing Committee invited CharlesE. Leiserson(Cambridge),DavidPeleg(Rehovot),MichaelO. Rabin (CambridgeandJerusalem),JohnE. Savage(Providence),andLucaTrevisan (Berkeley)togiveplenarylecturesattheconference. Moreover,threetutorials byDavidPeleg,JaymeL. Szwarc?ter(RiodeJaneiro)andLucaTrevisanwere o?ered in the days preceding the conference. We wish to express our appreciation to all the authors of the submitted - pers, to the Program Committee members and the referees, to the Organizing Committee, and to the plenary and tutorial lecturers who accepted our in- tation.
R 2,015.00

Data Structures for Raster Graphics
Raster graphics differs from the more traditional vector or line graphics in the sense that images are not made up from line segments but from discrete elements orderly arranged in a two-dimensional rectangular region. There are two reasons for the growing popularity of raster graphics or bit-mapped displays: I) the possibilities they offer to show extremely realistic pictures 2) the dropping prices of those displays and associated processors and memories. With the rise of raster graphics, all kinds of new techniques, methods, algorithms and data representations are associated -such as ray tracing, raster operations, and quadtrees-bringing with them a lot of fruitful research. As stated above raster graphics allows to create extremely realistic (synthesized) pictures. There are important applications in such diverse areas as industrial deSign, flight Simulation, education, image processing and animation. Unfortunately many applications are hampered by the fact that with the present state of the art they reqUire an excessive amount of computing resources. Hence it is worthwhile to investigate methods and techniques which may be of help in redudng computer costs associated with raster graphics applications. Since the choice of data srtuc tures influences the efficiency of algorithms in a crudal way, a workshop was set up in order to bring together a (limited) number of experienced researchers to dis cuss this topic. The workshop was held from 24 to 28 June 1985 at Steensel, a tiny village in the neighbourhood of Eindhoven, the Netherlands.
R 4,335.32

Applied Algorithms
This book constitutes the refereed proceedings of the Third International Conference on Applied Algorithms, ICAA 2026, held in Kolkata, India, during January 7–9, 2026.The 33 full papers presented in this book were carefully reviewed and selected from 92 submissions. They focus on the design, analysis, implementation, and experimental evaluation of efficient algorithms and data structures aimed at solving practical, real-world problems.
R 3,153.71

WALCOM: Algorithms and Computation
This book constitutes the refereed proceedings of the Second International Workshop on Algorithms and Computation, WALCOM 2008, held in Dhaka, Bangladesh, in February 2008.The 19 revised full papers presented together with 3 invited papers were carefully reviewed and selected from 57 submissions. The papers feature original research in the areas of algorithms and data structures, combinatorial algorithms, graph drawings and graph algorithms, parallel and distributed algorithms, string algorithms, computational geometry, graphs in bioinformatics and computational biology. The papers are organized in topical sections on bioinformatics algorithms, computational geometry and graph drawing, graph algorithms, and algorithm engineering.
R 1,549.61


Introduction to Python Programming and Data Structures, Global Edition
For introductory courses in Python Programming and Data Structures. A fundamentals first approach to programming helps students create efficient, elegant code. Introduction to Python Programming and Data Structures introduces students to basic programming concepts using a fundamentals-first approach that prepares students to learn object-oriented programming and advanced Python programming. This approach presents programming concepts and techniques that include control statements, loops, functions, and arrays before designing custom classes. Students learn basic logic and programming concepts prior to moving into object-oriented and GUI programming. The content incorporates a wide variety of problems with various levels of difficulty and covers many application areas to engage and motivate students.
R 3,391.00

R 342.00

Microcomputer Algorithms
Although the computing facilities available to scientists are becoming more powerful, the problems they are addressing are increasingly complex. The mathematical methods for simplifying the computing procedures are therefore as important as ever. Microcomputer Algorithms: Action from Algebra stresses the mathematical basis behind the use of many algorithms of computational mathematics, providing detailed descriptions on how to generate algorithms for a large number of different uses. Covering a wide range of mathematical and physical applications, the book contains the theory of 25 algorithms. The mathematical theory for each algorithm is described in detail prior to discussing the algorithm in full, with complete program listings. The book presents the algorithms in modular form, allowing for easy interpretation, for the adaptation to readers' specific requirements without difficulty, and for use with various microcomputers. Blending mathematics and programming in one volume, this book will be of broad interest to all scientists and engineers, particularly those physicists using microcomputers for scientific problem handling. Students handling numerical data for research projects will also find the book useful.
R 2,950.95


Algorithms in Bioinformatics
We are pleased to present the proceedings of the 5th Workshop on Algorithms in Bioinformatics (WABI 2005) which took place in Mallorca, Spain, October 3-6, 2005. The WABI 2005 workshop was part of the ?ve ALGO 2005 conf- ence meetings, which, in addition to WABI, included ESA, WAOA, IWPEC, and ATMOS. WABI 2005 was sponsored by EATCS (the European Assoc- tion for Theoretical Computer Science), the ISCB (the International Society for Computational Biology), the Universitat Polit' ecnica de Catalunya, the U- versitat de les Illes Balears, and the Ministerio de Educaci' on y Ciencia. See http://www.lsi.upc.edu/"wabi05/ for more details. The Workshop on Algorithms in Bioinformatics highlights research work speci?cally developed to address algorithmic problems in biosequence analysis. Theemphasisisthereforeonstatisticalandprobabilisticalgorithmsthataddress important problems in the ?eld of molecular and structural biology. At present, given the enormous scienti?c and technical e?orts in functional and structural genomics, the relevance of the problem is therefore constrained by the need for sound, e?cient and specialized algorithms, capable of achieving solutions that can be tested by the biological community.Indeed the ultimate goal is to - plement algorithms capable of extracting real features from real biological data sets. Therefore the workshop aims to present recent research results, including signi?cant work in progress, and to identify and explore directions of future research.
R 3,062.02

Discrete Structures
The aim of this text is to introduce discrete mathematics to beginning students of mathematics or computer science. It does this by bringing some coherency into the seemingly incongruent subjects that compose discrete math, such as logic, set theory, algebra, and combinatorics. It emphasizes their theoretical foundations and illustrates proofs along the way. The book prepares readers for the analysis of algorithms by discussing asymptotic analysis and a discrete calculus for sums. The book also deduces combinatorial methods from the foundations that are laid out. Unlike other texts on this subject, there is a greater emphasis on foundational material that leads to a better understanding. To further assist the reader in grasping and practicing concepts, roughly 690 exercises are provided at various levels of difficulty. Readers are encouraged to study the examples in the text and solve as many of the exercises as possible.The text is intended for freshman or sophomore undergraduate students in mathematics, computer science, or similar majors. The assumed background is precalculus. The chapter dependency chart included is designed to help students, independent readers, and instructors follow a systematic path for learning and teaching the material, with the option to explore material in later chapters.
R 2,564.00

Exercises in Numerical Linear Algebra and Matrix Factorizations
To put the world of linear algebra to advanced use, it is not enough to merely understand the theory; there is a significant gap between the theory of linear algebra and its myriad expressions in nearly every computational domain. To bridge this gap, it is essential to process the theory by solving many exercises, thus obtaining a firmer grasp of its diverse applications. Similarly, from a theoretical perspective, diving into the literature on advanced linear algebra often reveals more and more topics that are deferred to exercises instead of being treated in the main text. As exercises grow more complex and numerous, it becomes increasingly important to provide supporting material and guidelines on how to solve them, supporting students’ learning process. This book provides precisely this type of supporting material for the textbook “Numerical Linear Algebra and Matrix Factorizations,” published as Vol. 22 of Springer’s Texts in Computational Science and Engineering series. Instead of omitting details or merely providing rough outlines, this book offers detailed proofs, and connects the solutions to the corresponding results in the textbook. For the algorithmic exercises the utmost level of detail is provided in the form of MATLAB implementations. Both the textbook and solutions are self-contained. This book and the textbook are of similar length, demonstrating that solutions should not be considered a minor aspect when learning at advanced levels.
R 2,015.00

Algorithms - ESA 2001
This book constitutes the refereed proceedings of the 9th Annual European Symposium on Algorithms, ESA 2001, held in Aarhus, Denmark, in August 2001.The 41 revised full papers presented together with three invited contributions were carefully reviewed and selected from 102 submissions. The papers are organized in topical sections on caching and prefetching, online algorithms, data structures, optimization and approximation, sequences, scheduling, shortest paths, geometry, distributed algorithms, graph algorithms, pricing, broadcasting and multicasting, graph labeling and graph drawing, and graphs.
R 1,597.51

Algorithms and Complexity
The papers in this volume were presented at the Fourth Italian Conference on Algorithms and Complexity (CIAC 2000). The conference took place on March 1-3, 2000, in Rome (Italy), at the conference center of the University of Rome \La Sapienza". This conference was born in 1990 as a national meeting to be held every three years for Italian researchers in algorithms, data structures, complexity, and parallel and distributed computing. Due to a signi cant participation of foreign reaserchers, starting from the second conference, CIAC evolved into an international conference. In response to the call for papers for CIAC 2000, there were 41 subm- sions, from which the program committee selected 21 papers for presentation at the conference. Each paper was evaluated by at least three program committee members. In addition to the selected papers, the organizing committee invited Giorgio Ausiello, Narsingh Deo, Walter Ruzzo, and Shmuel Zaks to give plenary lectures at the conference. We wish to express our appreciation to all the authors of the submitted papers, to the program committee members and the referees, to the organizing committee, and to the plenary lecturers who accepted our invitation.
R 1,561.22


R 1,238.00

Designing Hexagonal Architecture with Java
Learn how to build robust, change-tolerable, and highly maintainable cloud-native Java applications with Hexagonal Architecture and Quarkus.Key FeaturesUse hexagonal architecture to increase maintainability and reduce technical debtLearn how to build systems that are simple to change and understandLeverage Quarkus to create modern cloud-native applicationsBook DescriptionWe live in a fast-evolving world with new technologies emerging every day, where enterprises are constantly changing in an unending quest to be more profitable. So how to develop software capable of handling such a high level of unpredictability? With this question in mind, this book explores how hexagonal architecture can help build robust, change-tolerable, maintainable, and cloud-native applications that can meet the needs of enterprises seeking to increase their profits while dealing with uncertainties. This book starts covering hexagonal architecture's building blocks, such as entities, use cases, ports, and adapters. You'll learn to assemble business code in the Domain hexagon, create features with ports and use cases in the Application hexagon, and make your software compatible with different technologies by employing adapters in the Framework hexagon. In this new edition, you will learn the differences between hexagonal and layered architecture and how to apply SOLID principles while developing a hexagonal system based on a real-world scenario. Finally, you'll get to grips with using Quarkus to turn your hexagonal application into a cloud-native system. By the end of this book, you'll be able to develop robust, flexible, and maintainable systems that will stand the test of time.What you will learnLearn how to apply SOLID principles with hexagonal architectureFind out how to assemble business rules algorithms using the specification design patternCombine domain-driven design techniques with hexagonal principles to create powerful domain modelsEmploy adapters to make the system support different protocols such as REST, gRPC, and WebSocketCreate a module and package structure based on hexagonal principlesUse Java modules to enforce dependency inversion and ensure isolation between software componentsImplement Quarkus DI to manage the life cycle of input and output portsWho this book is forThis book is for software architects and Java developers who want to improve code maintainability and enhance productivity with an architecture that allows changes in technology without compromising business logic, which is precisely what hexagonal architecture does. Intermediate knowledge of the Java programming language and familiarity with Jakarta EE will help you to get the most out of this book.
R 1,563.00

Mining of Data with Complex Structures
Mining of Data with Complex Structures:- Clarifies the type and nature of data with complex structure including sequences, trees and graphs- Provides a detailed background of the state-of-the-art of sequence mining, tree mining and graph mining.- Defines the essential aspects of the tree mining problem: subtree types, support definitions, constraints.- Outlines the implementation issues one needs to consider when developing tree mining algorithms (enumeration strategies, data structures, etc.)- Details the Tree Model Guided (TMG) approach for tree mining and provides the mathematical model for the worst case estimate of complexity of mining ordered induced and embedded subtrees.- Explains the mechanism of the TMG framework for mining ordered/unordered induced/embedded and distance-constrained embedded subtrees.- Provides a detailed comparison of the different tree mining approaches highlighting the characteristics and benefits of each approach.- Overviews the implications and potential applications of tree mining in general knowledge management related tasks, and uses Web, health and bioinformatics related applications as case studies.- Details the extension of the TMG framework for sequence mining- Provides an overview of the future research direction with respect to technical extensions and application areasThe primary audience is 3rd year, 4th year undergraduate students, Masters and PhD students and academics. The book can be used for both teaching and research. The secondary audiences are practitioners in industry, business, commerce, government and consortiums, alliances and partnerships to learn how to introduce and efficiently make use of the techniques for mining of data with complex structures into their applications. The scope of the book is both theoretical and practical and as such it will reach a broad market both within academia and industry. In addition, its subject matter is a rapidly emerging field that is critical for efficient analysis of knowledge stored in various domains.
R 4,662.24


Introduction To The Analysis Of Algorithms (Fourth Edition)
An Introduction to the Analysis of Algorithms is a comprehensive textbook that presents the fundamental methods for designing and analyzing computational algorithms through rigorous mathematical frameworks and practical implementation guidance. The book systematically explores major algorithmic paradigms including greedy algorithms, divide and conquer, dynamic programming, online algorithms, randomized algorithms, and parallel algorithms in linear algebra, providing detailed analysis of correctness and performance for each approach.The text emphasizes algorithm design techniques and formal analysis using pre/post-conditions and loop invariants, while covering essential computational foundations including automata theory, regular expressions, and complexity analysis. A new chapter on machine learning introduces students to this rapidly growing field, covering both supervised learning methods like regression and classification, and unsupervised techniques such as clustering, providing a bridge between traditional algorithmic thinking and modern data-driven approaches. The book also addresses practical considerations such as algorithm implementation, optimization techniques, and real-world applications across various domains.Intended for undergraduate and graduate students in computer science and mathematics, the self-contained presentation includes all necessary background material, worked examples, and extensive problem sets, making it suitable as both a classroom textbook and a comprehensive reference for anyone seeking to master algorithmic problem-solving and analysis.
R 5,572.18

Mastering Algorithms with Python
Gain a solid understanding of algorithms and improve your problem-solving abilities using Python code. With practical examples and clear explanations, this book bridges the gap between dense academic texts and overly simple industry guides. Focusing on the logic behind essential algorithms such as Breadth First Search (BFS), Depth First Search (DFS), Divide-and-Conquer, Greedy Methods, and Dynamic Programming, the book provides ample examples, from easy to more advanced. By connecting these concepts to real-world examples, such as chess strategies and the Seam Carving, the book helps readers better grasp and apply algorithms. Each chapter also includes fully implemented Python code, making it a practical reference. Mastering Algorithms with Python is ideal for IT professionals looking to enhance their skills and approach algorithms with clarity and confidence. What You Will Learn - - - - Who This Book Is For Software developers, data scientists, machine learning professionals and any curious learners about computer algorithms.
R 912.00

Combinatorial Algorithms
This book constitutes the thoroughly refereedpost-workshop proceedings for the 26 International Workshop on combinatorialAlgorithms, IWOCA 2015, held in Verona, Italy, in October 2015.The 29 revised full papers presented were carefullyreviewed and selected from a total of 90 submissions. The topics of the papersinclude algorithms and data structures (including sequential, parallel,distributed, approximation, probabilistic, randomised, and on-line algorithms),algorithms on strings and graphs; applications (bioinformatics, music analysis,networking, and others); combinatorics on words; combinatorial enumeration;combinatorial optimization; complexity theory; computational biology;compression and information retrieval; cryptography and information security;decompositions and combinatorial designs; discrete and computational geometry;graph drawing and labeling; graph theory.
R 2,186.68

Algorithms for Games
Algorithms for Games aims to provide a concrete example of the programming of a two-person game with complete information, and to demonstrate some of the methods of solutions; to show the reader that it is profitable not to fear a search, but rather to undertake it in a rational fashion, make a proper estimate of the dimensions of the "catastrophe", and use all suitable means to keep it down to a reasonable size. The book is dedicated to the study of methods for limiting the extent of a search. The game programming problem is very well suited to the study of the search problem, and in general for multi-step solution processes. With this in mind, the book focuses on the programming of games as the best means of developing the ideas and methods presented. While many of the examples are related to chess, only an elementary knowledge of the game is needed.
R 1,541.80

Probabilistic Data Structures for Blockchain-Based Internet of Things Applications
This book covers theory and practical knowledge of Probabilistic data structures (PDS) and Blockchain (BC) concepts. It introduces the applicability of PDS in BC to technology practitioners and explains each PDS through code snippets and illustrative examples. Further, it provides references for the applications of PDS to BC along with implementation codes in python language for various PDS so that the readers can gain confidence using hands on experience. Organized into five sections, the book covers IoT technology, fundamental concepts of BC, PDS and algorithms used to estimate membership query, cardinality, similarity and frequency, usage of PDS in BC based IoT and so forth.
R 3,911.14

Management and Processing of Complex Data Structures
This volume presents the proceedings of the third workshop on Information Systems and Artificial Intelligence, organized by the German Computer Science Society. The 11 invited contributions by well known researchers and developers working in the fields of databases and knowledge representation systems are centered around the topic of management and processing of complex data structures; they give a representative snapshot of the state-of-the-art in this fruitful interdisciplinary research area important for further progress in both, information systems and artificial intelligence. Most of the papers stress the demands for new or extended formalisms and their deductive capabilities, including an analysis of their formal properties for managing complex structures.
R 1,546.52

Algorithms for Sensor Systems
This book constitutes thoroughly refereed and revised selected papers from the 10th International Symposium on Algorithms and Experiments for Sensor Systems, Wireless Networks and Distributed Robotics, ALGOSENSORS 2014, held in Wroclaw, Poland, on September 12, 2014.The 10 papers presented in this volume were carefully reviewed and selected from 20 submissions. They are organized in topical sections named: robot planning; algorithms and data structures on graphs; and wireless networks.
R 1,773.29

Python Algorithms
Python Algorithms explains the Python approach to algorithm analysis and design. Written by Magnus Lie Hetland, author of Beginning Python, this book is sharply focused on classical algorithms, but it also gives a solid understanding of fundamental algorithmic problem-solving techniques. The book deals with some of the most important and challenging areas of programming and computer science, but in a highly pedagogic and readable manner. The book covers both algorithmic theory and programming practice, demonstrating how theory is reflected in real Python programs. Well-known algorithms and data structures that are built into the Python language are explained, and the user is shown how to implement and evaluate others himself.
R 2,082.80

Algorithms and Order
This volume contains the texts of the principal survey papers presented at ALGORITHMS -and ORDER, held· at Ottawa, Canada from June 1 to June 12, 1987. The conference was supported by grants from the N.A.T.O. Advanced Study Institute programme, the University of Ottawa, and the Natural Sciences and Engineering Research Council of Canada. We are grateful for this considerable support. Over fifty years ago, the Symposium on Lattice Theory, in Charlottesville, U.S.A., proclaimed the vitality of ordered sets. Only twenty years later the Symposium on Partially Ordered Sets and Lattice Theory, held at Monterey, U.S.A., had solved many of the problems that had been originally posed. In 1981, the Symposium on Ordered Sets held at Banff, Canada, continued this tradition. It was marked by a landmark volume containing twenty-three articles on almost all current topics in the theory of ordered sets and its applications. Three years after, Graphs and Orders, also held at Banff, Canada, aimed to document the role of graphs in the theory of ordered sets and its applications. Because of its special place in the landscape of the mathematical sciences order is especially sensitive to new trends and developments. Today, the most important current in the theory and application of order springs from theoretical computer seience. Two themes of computer science lead the way. The first is data structure. Order is common to data structures.
R 12,230.64

Algorithms and Computation
This book constitutes the refereed proceedings of the 23rd International Symposium on Algorithms and Computation, ISAAC 2012, held in Taipei, Taiwan, in December 2012. The 68 revised full papers presented together with three invited talks were carefully reviewed and selected from 174 submissions for inclusion in the book. This volume contains topics such as graph algorithms; online and streaming algorithms; combinatorial optimization; computational complexity; computational geometry; string algorithms; approximation algorithms; graph drawing; data structures; randomized algorithms; and algorithmic game theory.
R 2,241.62

Introduction to the Design and Analysis of Algorithms
Based on a new classification of algorithm design techniques and a clear delineation of analysis methods, Introduction to the Design and Analysis of Algorithms presents the subject in a coherent and innovative manner. Written in a student-friendly style, the book emphasizes the understanding of ideas over excessively formal treatment while thoroughly covering the material required in an introductory algorithms course. Popular puzzles are used to motivate students' interest and strengthen their skills in algorithmic problem solving. Other learning-enhancement features include chapter summaries, hints to the exercises, and a detailed solution manual.
R 6,473.00
















































