Search results for "Java Exercises with Data Structures and Algorithms"
Items we need to order for you


Essential Data Structures and Algorithms in Java
Master essential data structures and algorithms in Java with clear examples, visual walkthroughs, and real-world coding exercises designed to build your problem-solving skills fastKey FeaturesBuild solid foundations with a complete overview of core DSA conceptsImplement advanced data structures for AI agents and complex systemsMaster Java Collections and complexity analysis for scalable applicationsVisualize and debug algorithms with detailed annotated walkthroughsBook DescriptionDeveloping efficient, reliable software starts with mastering data structures and algorithms. This practical guide helps you bridge theory and practice using Java, focusing on real-world challenges and pragmatic solutions. You will explore foundational data structures such as arrays, lists, stacks, queues, trees, and graphs, and learn how to implement them natively and leverage the Java Collections Framework to build scalable applications. With each concept, you will work through step-by-step exercises that illustrate how algorithms are applied to tasks such as searching, sorting, and traversing data.Rather than being theory-heavy or overly abstract, this book takes a problem-first approach, balancing conceptual explanations with immediate hands-on application. Visual walkthroughs, annotated code, and progressive exercises guide you through each concept, helping you internalize how different structures and algorithms impact performance. Each chapter ends with review problems and thought exercises designed to reinforce key ideas and build your confidence through practice.Guided by a veteran software engineer with over 20 years of industry experience, you will gain the skills to implement advanced data structures for modern software systems and write faster, cleaner, and more effective Java code in real development environments.What you will learnUnderstand and implement core data structures in JavaAnalyze time and space complexity with Big O notationSolve coding problems with arrays, linked lists, and hash mapsUse stacks and queues to manage linear data workflowsApply tree and graph algorithms to hierarchical and networked dataMaster dynamic programming approachesDesign concurrent applications using Java's built-in toolsEvaluate algorithmic trade-offs for real-world applications including AIWho this book is forPerfect for aspiring Java developers, CS students, and software engineers with a foundation in JDK 11+ and OOP looking for a practical DSA refresher. This book skips basic syntax tutorials to front-load core principles, allowing you to turn theory into high-performance logic. Master complex algorithms and apply proven problem-solving patterns to write faster, cleaner, and AI-native Java code.
R 1,628.00

Beginning Java Data Structures and Algorithms
Though your application serves its purpose, it might not be a high performer. Learn techniques to accurately predict code efficiency, easily dismiss inefficient solutions, and improve the performance of your application.Key FeaturesExplains in detail different algorithms and data structures with sample problems and Java implementations where appropriateIncludes interesting tips and tricks that enable you to efficiently use algorithms and data structuresCovers over 20 topics using 15 practical activities and exercises Book DescriptionLearning about data structures and algorithms gives you a better insight on how to solve common programming problems. Most of the problems faced everyday by programmers have been solved, tried, and tested. By knowing how these solutions work, you can ensure that you choose the right tool when you face these problems.This book teaches you tools that you can use to build efficient applications. It starts with an introduction to algorithms and big O notation, later explains bubble, merge, quicksort, and other popular programming patterns. You’ll also learn about data structures such as binary trees, hash tables, and graphs. The book progresses to advanced concepts, such as algorithm design paradigms and graph theory. By the end of the book, you will know how to correctly implement common algorithms and data structures within your applications.What you will learnUnderstand some of the fundamental concepts behind key algorithmsExpress space and time complexities using Big O notation.Correctly implement classic sorting algorithms such as merge and quicksortCorrectly implement basic and complex data structuresLearn about different algorithm design paradigms, such as greedy, divide and conquer, and dynamic programmingApply powerful string matching techniques and optimize your application logicMaster graph representations and learn about different graph algorithmsWho this book is forIf you want to better understand common data structures and algorithms by following code examples in Java and improve your application efficiency, then this is the book for you. It helps to have basic knowledge of Java, mathematics and object-oriented programming techniques.
R 912.00

Think Data Structures
If you’re a student studying computer science or a software developer preparing for technical interviews, this practical book will help you learn and review some of the most important ideas in software engineering—data structures and algorithms—in a way that’s clearer, more concise, and more engaging than other materials. By emphasizing practical knowledge and skills over theory, author Allen Downey shows you how to use data structures to implement efficient algorithms, and then analyze and measure their performance. You’ll explore the important classes in the Java collections framework (JCF), how they’re implemented, and how they’re expected to perform. Each chapter presents hands-on exercises supported by test code online. Use data structures such as lists and maps, and understand how they work Build an application that reads Wikipedia pages, parses the contents, and navigates the resulting data tree Analyze code to predict how fast it will run and how much memory it will require Write classes that implement the Map interface, using a hash table and binary search tree Build a simple web search engine with a crawler, an indexer that stores web page contents, and a retriever that returns user query results Other books by Allen Downey include Think Java, Think Python, Think Stats, and Think Bayes.
R 1,384.00



Data Structures and Algorithms in Java
Learn with confidence with this hands-on undergraduate textbook for CS2 courses. Active-learning and real-world projects underpin each chapter, briefly reviewing programming fundamentals then progressing to core data structures and algorithms topics including recursion, lists, stacks, trees, graphs, sorting, and complexity analysis. Creative projects and applications put theoretical concepts into practice, helping students master the fundamentals. Dedicated project chapters supply further programming practice using real-world, interdisciplinary problems which students can showcase in their own online portfolios. Example Interview Questions sections prepare students for job applications. The pedagogy supports self-directed and skills-based learning with over 250 'Try It Yourself' boxes, many with solutions provided, and over 500 progressively challenging end-of-chapter questions. Written in a clear and engaging style, this textbook is a complete resource for teaching the fundamental skills that today's students need. Instructor resources are available online, including a test bank, solutions manual, and sample code.
R 2,707.00



Algorithms and Data Structures
Algorithms are at the heart of every nontrivial computer application, and algorithmics is a modern and active area of computer science. Every computer scientist and every professional programmer should know about the basic algorithmic toolbox: structures that allow efficient organization and retrieval of data, frequently used algorithms, and basic techniques for modeling, understanding and solving algorithmic problems. This book is a concise introduction addressed to students and professionals familiar with programming and basic mathematical language. Individual chapters cover arrays and linked lists, hash tables and associative arrays, sorting and selection, priority queues, sorted sequences, graph representation, graph traversal, shortest paths, minimum spanning trees, and optimization. The algorithms are presented in a modern way, with explicitly formulated invariants, and comment on recent trends such as algorithm engineering, memory hierarchies, algorithm libraries and certifying algorithms. The authors use pictures, words and high-level pseudocode to explain the algorithms, and then they present more detail on efficient implementations using real programming languages like C++ and Java.The authors have extensive experience teaching these subjects to undergraduates and graduates, and they offer a clear presentation, with examples, pictures, informal explanations, exercises, and some linkage to the real world. Most chapters have the same basic structure: a motivation for the problem, comments on the most important applications, and then simple solutions presented as informally as possible and as formally as necessary. For the more advanced issues, this approach leads to a more mathematical treatment, including some theorems and proofs. Finally, each chapter concludes with a section on further findings, providing views on the state of research, generalizations and advanced solutions.
R 2,097.38

Practical Data Structures and Algorithms for Java Developers
Master data structures and algorithms in Java through a practical, engineering-focused approach that goes beyond theory. With modern examples and a structured approach, this book emphasizes not only how algorithms work, but how to choose, adapt, and apply them in real-world systems.To start, you will conquer fundamental concepts such as arrays and linked lists. From there, the book progresses through essential sorting and searching techniques such as QuickSort and Binary Search. Then, you will explore the implementation and use cases of stacks and queues, followed by tree and graph structures with traversal algorithms. The book ends with you tackling advanced topics, such as dynamic programming, tries, and advanced graph algorithms.Finally, you will be ready to put your skills to the test and apply your knowledge in real-world situations for performance optimization.What You Will Learn: Implement and optimize essential data structures in JavaSolve complex algorithmic problems with confidenceMaster best practices for writing efficient, scalable Java code for enterprise applicationsWho This Book Is For: Java developers with a basic understanding of programming concepts who want to deepen their knowledge of data structures and algorithms. Secondary audiences include students, competitive programmers, and software engineers preparing for technical interviews.
R 1,368.00

Data Structures And Algorithms Using Java
With an accessible writing style and manageable amount of content, Data Structures and Algorithms Using Java is the ideal text for your course. This outstanding text correlates to the recommended syllabus put forth by the Association of Computing Machinery standard curriculum guidelines. The author has produced a resource that is more readable and instructional than any other, without compromising the scope of the ACM CS103, Data Structures and Algorithms, course material. The text’s unique, student-friendly pedagogical approach and organizational structure will keep students engaged in the process of self-directed investigative discovery both inside and outside the classroom.The pedagogical features of the text, based on the author’s 30 years of teaching experience, include succinct code examples, a unique common template used as the organizational basis of each chapter, the use of pseudocode to present the major algorithms developed in the text, nearly 300 carefully designed figures, and a concise review of Java.
R 6,148.00


Data Structures & Algorithms in Java 6e International Student Version
The design and analysis of efficient data structures has long been recognized as a key component of the Computer Science curriculum. Goodrich and Tomassia's approach to this classic topic is based on the object-oriented paradigm as the framework of choice for the design of data structures. For each ADT presented in the text, the authors provide an associated Java interface. Concrete data structures realizing the ADTs are provided as Java classes implementing the interfaces. The Java code implementing fundamental data structures in this book is organized in a single Java package, net.datastructures. This package forms a coherent library of data structures and algorithms in Java specifically designed for educational purposes in a way that is complimentary with the Java Collections Framework.
R 2,462.00



Data Structures and Algorithm Analysis in Java
Data Structures and Algorithm Analysis in Java is an advanced algorithms book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. It is also suitable for a first-year graduate course in algorithm analysis As the speed and power of computers increases, so does the need for effective programming and algorithm analysis. By approaching these skills in tandem, Mark Allen Weiss teaches readers to develop well-constructed, maximally efficient programs in Java. Weiss clearly explains topics from binary heaps to sorting to NP-completeness, and dedicates a full chapter to amortized analysis and advanced data structures and their implementation. Figures and examples illustrating successive stages of algorithms contribute to Weiss' careful, rigorous and in-depth analysis of each type of algorithm. A logical organization of topics and full access to source code complement the text's coverage.
R 2,188.00

Data Structures and Program Design Using Java
Data structures provide a means to managing large amounts of information such as large databases, using SEO effectively, and creating Internet/Web indexing services. This book is designed to present fundamentals of data structures for beginners using the Java programming language in a friendly, self-teaching format. Practical analogies using real world applications are integrated throughout the text to explain technical concepts. The book includes a variety of end-of-chapter practice exercises, e.g., programming, theoretical, and multiple-choice.
R 1,823.00


Data Structures
This text is intended for the one-term course in data structures with the following prerequisites: mastery of a high-level programming language, preferably Pascal, and finite or discrete mathematics. Each basic concept is introduced first through numerous examples and followed by advanced material allowing maximum flexibility in structuring the course. Through the use of data structures, the author has included coverage of the following related topics: recursion, pattern recognition, and dynamic programming. Extensive examples, over 300 exercises, 400 figures and tables, and 80 working algorithms contribute to student learning.
R 9,635.45

Data Structures in Java
This book is a fast-paced introduction to using data structures with Java. Numerous code samples and listings are included to support myriad topics. The first chapter contains a quick introduction to Java, along with Java code samples to check for leap years, find divisors of a number, and work with arrays of strings. The second chapter introduces recursion and usescode samples to check if a positive number is prime, to find the prime divisors of a positive integer, to calculate the GCD (greatest common divisor) and LCM (lowest common multiple) of a pair of positive integers. The third chapter contains Java code samples involving strings and arrays, such as finding binary substrings of a number, checking if strings contain unique characters, counting bits in a range of numbers, and how to compute XOR without using the XOR function. Chapters 4 through 6 include Java code samples involving search algorithms, concepts in linked lists, and tasks involving linked lists. Finally, Chapter 7 discusses data structures called queues and stacks, along with additional Java code samples.FEATURES:Extensive topics, code samples, and scripts related to data structuresCovers strings, arrays, queues, and stacks, linked lists, computing the XOR function, checking for unique characters, and moreIncludes companion files with code samples from the book (available for downloading from the publisher)
R 1,254.00


Sequential and Parallel Algorithms and Data Structures
This textbook is a concise introduction to the basic toolbox of structures that allow efficient organization and retrieval of data, key algorithms for problems on graphs, and generic techniques for modeling, understanding, and solving algorithmic problems. The authors aim for a balance between simplicity and efficiency, between theory and practice, and between classical results and the forefront of research. Individual chapters cover arrays and linked lists, hash tables and associative arrays, sorting and selection, priority queues, sorted sequences, graph representation, graph traversal, shortest paths, minimum spanning trees, optimization, collective communication and computation, and load balancing. The authors also discuss important issues such as algorithm engineering, memory hierarchies, algorithm libraries, and certifying algorithms. Moving beyond the sequential algorithms and data structures of the earlier related title, this book takes into account the paradigm shift towards the parallel processing required to solve modern performance-critical applications and how this impacts on the teaching of algorithms. The book is suitable for undergraduate and graduate students and professionals familiar with programming and basic mathematical language. Most chapters have the same basic structure: the authors discuss a problem as it occurs in a real-life situation, they illustrate the most important applications, and then they introduce simple solutions as informally as possible and as formally as necessary so the reader really understands the issues at hand. As they move to more advanced and optional issues, their approach gradually leads to a more mathematical treatment, including theorems and proofs. The book includes many examples, pictures, informal explanations, and exercises, and the implementation notes introduce clean, efficient implementations in languages such as C++ and Java.
R 2,015.00

Sequential and Parallel Algorithms and Data Structures
This textbook is a concise introduction to the basic toolbox of structures that allow efficient organization and retrieval of data, key algorithms for problems on graphs, and generic techniques for modeling, understanding, and solving algorithmic problems. The authors aim for a balance between simplicity and efficiency, between theory and practice, and between classical results and the forefront of research. Individual chapters cover arrays and linked lists, hash tables and associative arrays, sorting and selection, priority queues, sorted sequences, graph representation, graph traversal, shortest paths, minimum spanning trees, optimization, collective communication and computation, and load balancing. The authors also discuss important issues such as algorithm engineering, memory hierarchies, algorithm libraries, and certifying algorithms. Moving beyond the sequential algorithms and data structures of the earlier related title, this book takes into account the paradigm shift towards the parallel processing required to solve modern performance-critical applications and how this impacts on the teaching of algorithms. The book is suitable for undergraduate and graduate students and professionals familiar with programming and basic mathematical language. Most chapters have the same basic structure: the authors discuss a problem as it occurs in a real-life situation, they illustrate the most important applications, and then they introduce simple solutions as informally as possible and as formally as necessary so the reader really understands the issues at hand. As they move to more advanced and optional issues, their approach gradually leads to a more mathematical treatment, including theorems and proofs. The book includes many examples, pictures, informal explanations, and exercises, and the implementation notes introduce clean, efficient implementations in languages such as C++ and Java.
R 2,015.00

Guide to Data Structures
This accessible and engaging textbook/guide provides a concise introduction to data structures and associated algorithms. Emphasis is placed on the fundamentals of data structures, enabling the reader to quickly learn the key concepts, and providing a strong foundation for later studies of more complex topics. The coverage includes discussions on stacks, queues, lists, (using both arrays and links), sorting, and elementary binary trees, heaps, and hashing. This content is also a natural continuation from the material provided in the separate Springer title Guide to Java by the same authors.Topics and features: reviews the preliminary concepts, and introduces stacks and queues using arrays, along with a discussion of array-based lists; examines linked lists, the implementation of stacks and queues using references, binary trees, a range of varied sorting techniques, heaps, and hashing; presents both primitive and generic data types in each chapter, and makes use of contour diagrams to illustrate object-oriented concepts; includes chapter summaries, and asks the reader questions to help them interact with the material; contains numerous examples and illustrations, and one or more complete program in every chapter; provides exercises at the end of each chapter, as well as solutions to selected exercises, and a glossary of important terms.This clearly-written work is an ideal classroom text for a second semester course in programming using the Java programming language, in preparation for a subsequent advanced course in data structures and algorithms. The book is also eminently suitable as a self-study guide in either academe or industry.
R 2,381.00

Algorithms and Data Structures
This is a central topic in any computer science curriculum. To distinguish this textbook from others, the author considers probabilistic methods as being fundamental for the construction of simple and efficient algorithms, and in each chapter at least one problem is solved using a randomized algorithm. Data structures are discussed to the extent needed for the implementation of the algorithms. The specific algorithms examined were chosen because of their wide field of application.This book originates from lectures for undergraduate and graduate students. The text assumes experience in programming algorithms, especially with elementary data structures such as chained lists, queues, and stacks. It also assumes familiarity with mathematical methods, although the author summarizes some basic notations and results from probability theory and related mathematical terminology in the appendices. He includes many examples to explain the individual steps of the algorithms, and he concludes each chapter with numerous exercises.
R 2,373.96

Java: Data Structures and Programming
This introduction to the Java language integrates a discussion of object-oriented programming with the design and implementation of data structures. It covers the most important topics, including algorithm analysis; time and space complexities; Java built-in data structure classes; input and output, data, and access streams; and the persistency of data.
R 1,589.28


Introduction to Data Structures and Algorithms
Data structures and algorithms are presented at the college level in a highly accessible format that presents material with one-page displays in a way that will appeal to both teachers and students. The thirteen chapters cover: Models of Computation, Lists, Induction and Recursion, Trees, Algorithm Design, Hashing, Heaps, Balanced Trees, Sets Over a Small Universe, Graphs, Strings, Discrete Fourier Transform, Parallel Computation. Key features: Complicated concepts are expressed clearly in a single page with minimal notation and without the "clutter" of the syntax of a particular programming language; algorithms are presented with self-explanatory "pseudo-code." * Chapters 1-4 focus on elementary concepts, the exposition unfolding at a slower pace. Sample exercises with solutions are provided. Sections that may be skipped for an introductory course are starred. Requires only some basic mathematics background and some computer programming experience. * Chapters 5-13 progress at a faster pace. The material is suitable for undergraduates or first-year graduates who need only review Chapters 1 -4. * This book may be used for a one-semester introductory course (based on Chapters 1-4 and portions of the chapters on algorithm design, hashing, and graph algorithms) and for a one-semester advanced course that starts at Chapter 5. A year-long course may be based on the entire book. * Sorting, often perceived as rather technical, is not treated as a separate chapter, but is used in many examples (including bubble sort, merge sort, tree sort, heap sort, quick sort, and several parallel algorithms). Also, lower bounds on sorting by comparisons are included with the presentation of heaps in the context of lower bounds for comparison-based structures. * Chapter 13 on parallel models of computation is something of a mini-book itself, and a good way to end a course. Although it is not clear what parallel
R 1,663.18

R 877.00

Schaum's Outline of Data Structures with Java, 2ed
Tough Test Questions? Missed Lectures? Not Enough Time?Fortunately for you, there's Schaum's Outlines. More than 40 million students have trusted Schaum's to help them succeed in the classroom and on exams. Schaum's is the key to faster learning and higher grades in every subject. Each Outline presents all the essential course information in an easy-to-follow, topic-by-topic format. You also get hundreds of examples, solved problems, and practice exercises to test your skills. This Schaum's Outline gives youPractice problems with full explanations that reinforce knowledgeCoverage of the most up-to-date developments in your course fieldIn-depth review of practices and applicationsFully compatible with your classroom text, Schaum's highlights all the important facts you need to know. Use Schaum's to shorten your study time-and get your best test scores!Schaum's Outlines-Problem Solved.
R 967.35

R 4,518.98

Algorithms and Data Structures
This is a central topic in any computer science curriculum. To distinguish this textbook from others, the author considers probabilistic methods as being fundamental for the construction of simple and efficient algorithms, and in each chapter at least one problem is solved using a randomized algorithm. Data structures are discussed to the extent needed for the implementation of the algorithms. The specific algorithms examined were chosen because of their wide field of application.This book originates from lectures for undergraduate and graduate students. The text assumes experience in programming algorithms, especially with elementary data structures such as chained lists, queues, and stacks. It also assumes familiarity with mathematical methods, although the author summarizes some basic notations and results from probability theory and related mathematical terminology in the appendices. He includes many examples to explain the individual steps of the algorithms, and he concludes each chapter with numerous exercises.
R 1,566.66

Data Structures and Algorithms
This textbook provides an in depth course on data structures in the context of object oriented development. Its main themes are abstraction, implementation, encapsulation, and measurement: that is, that the software process begins with abstraction of data types, which then lead to alternate representations and encapsulation, and finally to resource measurement. A clear object oriented approach, making use of Booch components, will provide readers with a useful library of data structure components and experience in software reuse. Students using this book are expected to have a reasonable understanding of the basic logical structures such as stacks and queues. Throughout, Ada 95 is used and the author takes full advantage of Ada's encapsulation features and the ability to present specifications without implementational details. Ada code is supported by two suites available over the World Wide Web.
R 2,015.00

Algorithms and Data Structures
Algorithms are at the heart of every nontrivial computer application, and algorithmics is a modern and active area of computer science. Every computer scientist and every professional programmer should know about the basic algorithmic toolbox: structures that allow efficient organization and retrieval of data, frequently used algorithms, and basic techniques for modeling, understanding and solving algorithmic problems. This book is a concise introduction addressed to students and professionals familiar with programming and basic mathematical language. Individual chapters cover arrays and linked lists, hash tables and associative arrays, sorting and selection, priority queues, sorted sequences, graph representation, graph traversal, shortest paths, minimum spanning trees, and optimization. The algorithms are presented in a modern way, with explicitly formulated invariants, and comment on recent trends such as algorithm engineering, memory hierarchies, algorithm libraries and certifying algorithms. The authors use pictures, words and high-level pseudocode to explain the algorithms, and then they present more detail on efficient implementations using real programming languages like C++ and Java.The authors have extensive experience teaching these subjects to undergraduates and graduates, and they offer a clear presentation, with examples, pictures, informal explanations, exercises, and some linkage to the real world. Most chapters have the same basic structure: a motivation for the problem, comments on the most important applications, and then simple solutions presented as informally as possible and as formally as necessary. For the more advanced issues, this approach leads to a more mathematical treatment, including some theorems and proofs. Finally, each chapter concludes with a section on further findings, providing views on the state of research, generalizations and advanced solutions.
R 1,827.22

Introduction to Data Structures and Algorithms
Data structures and algorithms are presented at the college level in a highly accessible format that presents material with one-page displays in a way that will appeal to both teachers and students. The thirteen chapters cover: Models of Computation, Lists, Induction and Recursion, Trees, Algorithm Design, Hashing, Heaps, Balanced Trees, Sets Over a Small Universe, Graphs, Strings, Discrete Fourier Transform, Parallel Computation. Key features: Complicated concepts are expressed clearly in a single page with minimal notation and without the "clutter" of the syntax of a particular programming language; algorithms are presented with self-explanatory "pseudo-code." * Chapters 1-4 focus on elementary concepts, the exposition unfolding at a slower pace. Sample exercises with solutions are provided. Sections that may be skipped for an introductory course are starred. Requires only some basic mathematics background and some computer programming experience. * Chapters 5-13 progress at a faster pace. The material is suitable for undergraduates or first-year graduates who need only review Chapters 1 -4. * This book may be used for a one-semester introductory course (based on Chapters 1-4 and portions of the chapters on algorithm design, hashing, and graph algorithms) and for a one-semester advanced course that starts at Chapter 5. A year-long course may be based on the entire book. * Sorting, often perceived as rather technical, is not treated as a separate chapter, but is used in many examples (including bubble sort, merge sort, tree sort, heap sort, quick sort, and several parallel algorithms). Also, lower bounds on sorting by comparisons are included with the presentation of heaps in the context of lower bounds for comparison-based structures. * Chapter 13 on parallel models of computation is something of a mini-book itself, and a good way to end a course. Although it is not clear what parallel
R 1,673.12


Common-Sense Guide to Data Structures and Algorithms, 2e
If you thought that data structures and algorithms were all just theory, you're missing out on what they can do for your code. Learn to use Big O Notation to make your code run faster by orders of magnitude. Choose from data structures such as hash tables, trees, and graphs to increase your code's efficiency exponentially. With simple language and clear diagrams, this book makes this complex topic accessible, no matter your background. This new edition features practice exercises in every chapter, and new chapters on topics such as dynamic programming and heaps and tries. Get the hands-on info you need to master data structures and algorithms for your day-to-day work.Algorithms and data structures are much more than abstract concepts. Mastering them enables you to write code that runs faster and more efficiently, which is particularly important for today's web and mobile apps. Take a practical approach to data structures and algorithms, with techniques and real-world scenarios that you can use in your daily production code, with examples in JavaScript, Python, and Ruby. This new and revised second edition features new chapters on recursion, dynamic programming, and using Big O in your daily work.Use Big O notation to measure and articulate the efficiency of your code, and modify your algorithm to make it faster. Find out how your choice of arrays, linked lists, and hash tables can dramatically affect the code you write. Use recursion to solve tricky problems and create algorithms that run exponentially faster than the alternatives. Dig into advanced data structures such as binary trees and graphs to help scale specialized applications such as social networks and mapping software. You'll even encounter a single keyword that can give your code a turbo boost. Practice your new skills with exercises in every chapter, along with detailed solutions.Use these techniques today to make your code faster and more scalable
R 1,590.00

R 814.00

Data Structures and Algorithms with Scala
This practically-focused textbook presents a concise tutorial on data structures and algorithms using the object-functional language Scala. The material builds upon the foundation established in the title Programming with Scala: Language Exploration by the same author, which can be treated as a companion text for those less familiar with Scala.Topics and features: discusses data structures and algorithms in the form of design patterns; covers key topics on arrays, lists, stacks, queues, hash tables, binary trees, sorting, searching, and graphs; describes examples of complete and running applications for each topic; presents a functional approach to implementations for data structures and algorithms (excepting arrays); provides numerous challenge exercises (with solutions), encouraging the reader to take existing solutions and improve upon them; offers insights from the author’s extensive industrial experience; includes a glossary, and an appendix supplying an overview of discrete mathematics.Highlighting the techniques and skills necessary to quickly derive solutions to applied problems, this accessible text will prove invaluable to time-pressured students and professional software engineers.
R 1,832.87

Hands-On Data Structures and Algorithms with Kotlin
Understand and solve complex computational problems and write efficient code with KotlinKey FeaturesLearn about important data structures such as lists, arrays, queues, and stacksDesign custom algorithms for real-life implementationsIdentify suitable tools for different scenarios and deliver immediate resultsBook DescriptionData structures and algorithms are more than just theoretical concepts. They help you become familiar with computational methods for solving problems and writing logical code. Equipped with this knowledge, you can write efficient programs that run faster and use less memory.Hands-On Data Structures and Algorithms with Kotlin book starts with the basics of algorithms and data structures, helping you get to grips with the fundamentals and measure complexity. You'll then move on to exploring the basics of functional programming while getting used to thinking recursively. Packed with plenty of examples along the way, this book will help you grasp each concept easily. In addition to this, you'll get a clear understanding of how the data structures in Kotlin's collection framework work internally.By the end of this book, you will be able to apply the theory of data structures and algorithms to work out real-world problems.What you will learnUnderstand the basic principles of algorithms and data structuresExplore general-purpose data structures with arrays and linked listsGet to grips with the basics of stacks, queues, and double-ended queuesUnderstand functional programming and related data structuresUse performant searching and efficient sortingUncover how Kotlin's collection framework functionsBecome adept at implementing different types of mapsWho this book is forIf you're a Kotlin developer who wants to learn the intricacies of implementing data structures and algorithms for scalable application development, this book is for you.
R 1,335.00

Algorithms and Data Structures
This book constitutes the refereed proceedings of the 16th International Symposium on Algorithms and Data Structures, WADS, 2019, held in Edmonton, AB, Canada, in August 2019. The 42 full papers presented together with 3 invited lectures, we carefully reviewed and selected from a total of 88 submissions. They present original research on the theory and application of algorithms and data structures in many areas, including combinatorics, computational geometry, databases, graphics, and parallel and distributed computing.
R 2,224.60

Algorithms and Data Structures
This book constitutes the refereed proceedings of the 17th International Symposium on Algorithms and Data Structures, WADS 2021, held in virtually in August 2021. The 47 full papers, presented together with two invited lectures, were carefully reviewed and selected from a total of 123 submissions. They present original research on the theory, design and application of algorithms and data structures.
R 4,335.68


R 608.00

R 456.00














































