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



Introduction to Programming in Java
Programming skills are indispensable in today’s world, not just for computer science students, but also for anyone in any scientific or technical discipline. An Introduction to Programming in Java, Second Edition, by Robert Sedgewick and Kevin Wayne is an accessible, interdisciplinary treatment that emphasizes important and engaging applications, not toy problems. The authors supply the tools needed for students and professionals to learn that programming is a natural, satisfying, and creative experience, and to become conversant with one of the world’s most widely used languages. This example-driven guide focuses on Java’s most useful features and brings programming to life for every student in the sciences, engineering, and computer science. Coverage includes Basic elements of programming: variables, assignment statements, built-in data types, conditionals, loops, arrays, and I/O, including graphics and soundFunctions, modules, and libraries: organizing programs into components that can be independently debugged, maintained, and reusedAlgorithms and data structures: sort/search algorithms, stacks, queues, and symbol tablesApplications from applied math, physics, chemistry, biology, and computer science Drawing on their extensive classroom experience, the authors provide Q&As, exercises, and opportunities for creative engagement with the material throughout. Together with the companion materials, this book empowers people pursue a modern approach to teaching and learning programming. Companion web site contains Chapter summariesSupplementary exercises, some with solutionsDetailed instructions for installing a Java programming environmentProgram code and test data suitable for easy downloadDetailed creative exercises, projects, and other supplementary mat And companion studio-produced online videos provide students and professionals with the opportunity to engage with the material at their own pace and instructors the opportunity to spend their time with students helping them to succeed on assignments and exams.
R 2,649.00


Learn Data Structures and Algorithms with Golang
Explore Golang's data structures and algorithms to design, implement, and analyze code in the professional settingKey FeaturesLearn the basics of data structures and algorithms and implement them efficientlyUse data structures such as arrays, stacks, trees, lists and graphs in real-world scenariosCompare the complexity of different algorithms and data structures for improved code performanceBook DescriptionGolang is one of the fastest growing programming languages in the software industry. Its speed, simplicity, and reliability make it the perfect choice for building robust applications. This brings the need to have a solid foundation in data structures and algorithms with Go so as to build scalable applications. Complete with hands-on tutorials, this book will guide you in using the best data structures and algorithms for problem solving.The book begins with an introduction to Go data structures and algorithms. You'll learn how to store data using linked lists, arrays, stacks, and queues. Moving ahead, you'll discover how to implement sorting and searching algorithms, followed by binary search trees. This book will also help you improve the performance of your applications by stringing data types and implementing hash structures in algorithm design. Finally, you'll be able to apply traditional data structures to solve real-world problems.By the end of the book, you'll have become adept at implementing classic data structures and algorithms in Go, propelling you to become a confident Go programmer.What you will learnImprove application performance using the most suitable data structure and algorithmExplore the wide range of classic algorithms such as recursion and hashing algorithmsWork with algorithms such as garbage collection for efficient memory management Analyze the cost and benefit trade-off to identify algorithms and data structures for problem solvingExplore techniques for writing pseudocode algorithm and ace whiteboard coding in interviewsDiscover the pitfalls in selecting data structures and algorithms by predicting their speed and efficiencyWho this book is forThis book is for developers who want to understand how to select the best data structures and algorithms that will help solve coding problems. Basic Go programming experience will be an added advantage.
R 1,498.00

Data Structures and Algorithms in C++: Pocket Primer
This book takes a minimalist approach to the traditional data structures course. It covers only those topics that are absolutely essential; the more esoteric structures and algorithms are left for later study. Suitable for an introductory data structures course or self-study, this book is written from the ground up in C++ (not translated from a Java-based text), and uses features of the C++ Standard Template Library to illustrate important concepts. A unique feature of the text is its use of literate programming techniques (originally developed by Donald Knuth) to present the sample code in a way that keeps the code from overwhelming the accompanying explanations. This book is suitable for an undergraduate data structures course using C++ or for developers needing review.Features:Takes a ""minimalist"" approach to the material that presents only essential concepts. This enables readers to focus on (and remember) just what they'll need.Uses select features of the C++11 standard to simplify the sample code and make it easier to understand.Connects the concepts directly to the classes provided the Standard Template Library (STL), and shows how these classes can be implemented in C++. Uses ""literate programming"" techniques that allow the presentation of the sample code to more clearly show the details of the code as well as how the pieces fit together.
R 1,025.00


C++ Data Structures and Algorithm Design Principles
Get started with C++ programming by learning how to build applications using its data structures and algorithmsKey FeaturesExplore data structures such as arrays, stacks, and graphs with real-world examplesStudy the trade-offs between algorithms and data structures and discover what works and what doesn'tDiscover how techniques such as bloom filters and multi-way heaps boost real-world applicationsBook DescriptionC++ is a mature multi-paradigm programming language that enables you to write high-level code with a high degree of control over the hardware. Today, significant parts of software infrastructure, including databases, browsers, multimedia frameworks, and GUI toolkits, are written in C++.This book starts by introducing C++ data structures and how to store data using linked lists, arrays, stacks, and queues. In later chapters, the book explains the basic algorithm design paradigms, such as the greedy approach and the divide-and-conquer approach, which are used to solve a large variety of computational problems. Finally, you will learn the advanced technique of dynamic programming to develop optimized implementations of several algorithms discussed in the book.By the end of this book, you will have learned how to implement standard data structures and algorithms in efficient and scalable C++ 14 code.What you will learnBuild applications using hash tables, dictionaries, and setsExplore how modern hardware affects the actual run-time performance of programsApply common algorithms such as heapsort and merge sort for string data typesUse C++ template metaprogramming to write code librariesImplement a URL shortening service using a bloom filterUse appropriate modern C++ idioms such as std:: array instead of C-style arraysWho this book is forThis book is for developers or students who want to revisit basic data structures and algorithm design techniques. Although no mathematical background is required, basic knowledge of complexity classes and Big O notation along with a qualification in an algorithms course will help you get the most out of this book. Familiarity with C++ 14 standard is assumed.
R 1,498.00



Java Library of Graph Algorithms and Optimization
Because of its portability and platform-independence, Java is the ideal computer programming language to use when working on graph algorithms and other mathematical programming problems. Collecting some of the most popular graph algorithms and optimization procedures, A Java Library of Graph Algorithms and Optimization provides the source code for a library of Java programs that can be used to solve problems in graph theory and combinatorial optimization. Self-contained and largely independent, each topic starts with a problem description and an outline of the solution procedure, followed by its parameter list specification, source code, and a test example that illustrates the usage of the code.The book begins with a chapter on random graph generation that examines bipartite, regular, connected, Hamilton, and isomorphic graphs as well as spanning, labeled, and unlabeled rooted trees. It then discusses connectivity procedures, followed by a paths and cycles chapter that contains the Chinese postman and traveling salesman problems, Euler and Hamilton cycles, and shortest paths. The author proceeds to describe two test procedures involving planarity and graph isomorphism. Subsequent chapters deal with graph coloring, graph matching, network flow, and packing and covering, including the assignment, bottleneck assignment, quadratic assignment, multiple knapsack, set covering, and set partitioning problems. The final chapters explore linear, integer, and quadratic programming. The appendices provide references that offer further details of the algorithms and include the definitions of many graph theory terms used in the book.
R 3,756.30

R 580.00

Hands-On Data Structures and Algorithms with Python
Understand how implementing different data structures and algorithms intelligently can make your Python code and applications more maintainable and efficientKey FeaturesExplore functional and reactive implementations of traditional and advanced data structuresApply a diverse range of algorithms in your Python codeImplement the skills you have learned to maximize the performance of your applicationsBook DescriptionChoosing the right data structure is pivotal to optimizing the performance and scalability of applications. This new edition of Hands-On Data Structures and Algorithms with Python will expand your understanding of key structures, including stacks, queues, and lists, and also show you how to apply priority queues and heaps in applications. You'll learn how to analyze and compare Python algorithms, and understand which algorithms should be used for a problem based on running time and computational complexity. You will also become confident organizing your code in a manageable, consistent, and scalable way, which will boost your productivity as a Python developer.By the end of this Python book, you'll be able to manipulate the most important data structures and algorithms to more efficiently store, organize, and access data in your applications.What you will learnUnderstand common data structures and algorithms using examples, diagrams, and exercisesExplore how more complex structures, such as priority queues and heaps, can benefit your codeImplement searching, sorting, and selection algorithms on number and string sequencesBecome confident with key string-matching algorithmsUnderstand algorithmic paradigms and apply dynamic programming techniquesUse asymptotic notation to analyze algorithm performance with regard to time and space complexitiesWrite powerful, robust code using the latest features of PythonWho this book is forThis book is for developers and programmers who are interested in learning about data structures and algorithms in Python to write complex, flexible programs. Basic Python programming knowledge is expected.
R 1,628.00





Mastering Algorithms with C
There are many books on data structures and algorithms, including some with useful libraries of C functions. Mastering Algorithms with C offers you a unique combination of theoretical background and working code. With robust solutions for everyday programming tasks, this book avoids the abstract style of most classic data structures and algorithms texts, but still provides all of the information you need to understand the purpose and use of common programming techniques. Implementations, as well as interesting, real-world examples of each data structure and algorithm, are included. Using both a programming style and a writing style that are exceptionally clean, Kyle Loudon shows you how to use such essential data structures as lists, stacks, queues, sets, trees, heaps, priority queues, and graphs. He explains how to use algorithms for sorting, searching, numerical analysis, data compression, data encryption, common graph problems, and computational geometry. And he describes the relative efficiency of all implementations.The compression and encryption chapters not only give you working code for reasonably efficient solutions, they offer explanations of concepts in an approachable manner for people who never have had the time or expertise to study them in depth. Anyone with a basic understanding of the C language can use this book. In order to provide maintainable and extendible code, an extra level of abstraction (such as pointers to functions) is used in examples where appropriate. Understanding that these techniques may be unfamiliar to some programmers, Loudon explains them clearly in the introductory chapters. Contents include: * Pointers * Recursion * Analysis of algorithms * Data structures (lists, stacks, queues, sets, hash tables, trees, heaps, priority queues, graphs) * Sorting and searching * Numerical methods * Data compression * Data encryption * Graph algorithms * Geometric algorithms
R 1,368.00




R 3,777.62


R 1,527.00

Common-Sense Guide to Data Structures and Algorithms in Python, Volume 1
If you thought data structures and algorithms were all just theory, you're missing out on what they can do for your Python 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. Every chapter features practice exercises to give you the hands-on information 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. The Python edition uses Python exclusively for all code examples, exercise, and solutions.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 Python code faster and more scalable.
R 2,005.00



R 764.00


Core Java, Volume II
The Classic Guide to the Java Programming Language--Fully Updated through Java 25 Core Java is the leading no-nonsense tutorial and reference for experienced programmers who want to write robust Java code for real-world applications. Now, Core Java, Volume II: Advanced Features, Fourteenth Edition, has been revised to cover the new features and enhancements in the Java 25 long-term support release. As always, all chapters have been completely updated, outdated material has been removed, and the new APIs are covered in detail. This volume focuses on the advanced topics that a programmer needs to know for professional software development and includes authoritative coverage of fi le processing, networking, databases, security, internationalization, compiling and scripting, and foreign functions, as well as complete chapters on the Streams, XML, and Date and Time APIs. In addition, the chapters on Swing and Graphics cover techniques that are applicable to both client-side user interfaces and server-side generation of graphics and images. Cay S. Horstmann clearly explains sophisticated new features with depth and completeness and demonstrates how to use them to build professional-quality applications. Horstmann's thoroughly tested sample code reflects modern Java style and best practices. The examples are carefully crafted for easy understanding and maximum practical value, so you can rely on them to jump-start your own programs. Effectively use Java streams, including new Java 25 features such as stream gatherersMaster advanced techniques, idioms, and best practices for writing reliable Java codeMake the most of enhanced Java I/O APIs, object serialization, and regular expressionsConnect to network services, harvest web data with the HTTP/2 client, and serve data with the built-in web server or implement your own serverProcess code via the Scripting and Compiler APIs, and generate code with the new Class File APILeverage the Java security model, user authentication, and the security library's cryptographic functionsLearn powerful new APIs for accessing foreign functions and memory "This is the definitive reference and instructional work for Java and the Java ecosystem."--Andrew Binstock, Java Magazine See Core Java, Volume I: Fundamentals, Fourteenth Edition, for expert coverage of Java programming fundamentals, including objects, generics, collections, lambda expressions, concurrency, modularity, and functional programming. Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.
R 2,748.00

Structured Java 2nd Edition
Java is an Object-Oriented Language. I believe that the Object-Oriented paradigm is extremely useful, but is very difficult to teach to beginning students. I also believe that there is a lot of benefit in understanding how to develop and debug good solid methods before we get into the additional complexities of the Object-Oriented paradigm. So there is a choice, we either teach our students multiple languages, or we find a way to teach them the basics of an object-oriented language, such as Java in a procedural fashion. A few things that I will stress in this book are: 1. Good Coding habits. Writing code so that others can read it. 2. Good Design habits. 3. Testing your code while building it. I call this Write a little, Test a little. 4. Project life cycle. I trust that this book will help in your understanding of Java and coding in general.
R 652.00




R 580.00

Introduction to Compiler Construction in a Java World
Immersing students in Java and the Java Virtual Machine (JVM), Introduction to Compiler Construction in a Java World enables a deep understanding of the Java programming language and its implementation. The text focuses on design, organization, and testing, helping students learn good software engineering skills and become better programmers.The book covers all of the standard compiler topics, including lexical analysis, parsing, abstract syntax trees, semantic analysis, code generation, and register allocation. The authors also demonstrate how JVM code can be translated to a register machine, specifically the MIPS architecture. In addition, they discuss recent strategies, such as just-in-time compiling and hotspot compiling, and present an overview of leading commercial compilers. Each chapter includes a mix of written exercises and programming projects. By working with and extending a real, functional compiler, students develop a hands-on appreciation of how compilers work, how to write compilers, and how the Java language behaves. They also get invaluable practice working with a non-trivial Java program of more than 30,000 lines of code. Fully documented Java code for the compiler is accessible at http://www.cs.umb.edu/j--/
R 5,701.51

Laboratory Course for Programming with Java
The active learning approach of A Laboratory Course for Programming with Java, Second Edition engages students in the process of understanding and implementing programming language concepts. A perfect companion to any introductory Java programming course, this manual provides 14 hands-on laboratory activities, each of which contains Prelab, In-lab, and Post-lab exercises. In each lesson students have the opportunity to apply their textbook knowledge, gain programming experience, and acquire meaningful understanding of language concepts.
R 1,941.00

R 764.00

R 2,748.00

Java Generics and Collections
Java Generics and Collections has been the go-to guide to generics for more than a decade. This second edition covers Java 21, providing a clear guide to generics from their most common uses to the strangest corner cases, giving you everything you need to know to use and write generic APIs effectively. It covers the collections library thoroughly, so you'll always know how and when to use each collection for any given task. And it explains stream processing, so you'll know which model to use and how they interoperate to get the best out of the platform library.This indispensable guide covers:Fundamentals of generics: type parameters and generic methodsSubtyping and wildcardsGenerics and reflectionDesign patterns for genericsSets, queues, lists, maps, and their implementationsConcurrent programming and thread safety with collectionsPerformance of different collection implementationsBest practices for using and extending the Java collections frameworkDesign philosophy and comparison with other collections libraries
R 1,505.00

R 1,527.00

R 305.00

R 1,527.00

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

Applied AI for Enterprise Java Development
As a Java enterprise developer or architect, you know that embracing AI isn't just optional-it's critical to keeping your competitive edge. The question is, how can you skillfully incorporate these groundbreaking AI technologies into your applications without getting mired in complexity?Enter this clear-cut, no-nonsense guide to integrating generative AI into your Java enterprise ecosystem. With insights from authors Alex Soto Bueno, Markus Eisele, and Natale Vinto, you'll learn to marry the robustness of Java's enterprise world with the dynamism of AI. It's more than just a how-to-it's a way to elevate enterprise software with savvy AI integrations, ensuring your skills and your applications remain on the cutting edge.Inside, you'll unlock the power to:Demystify GenAI's role and impact on contemporary software developmentCraft actionable, AI-driven applications using Java's rich ecosystem of open source frameworksImplement field-tested AI patterns tailored for prod-ready, enterprise-strength applicationsAccess and integrate top-tier open source AI models with Java's Inference APIsNavigate the Java framework landscape with AI-centric agility and confidence
R 1,505.00

Beginner's Guide to Code Algorithms
Do you have creative ideas that you wish you could transform into code?Do you want to boost your problem solving and logic skills?Do you want to enhance your career by adopting an algorithmic mindset?In our increasingly digital world, coding is an essential skill. Communicating an algorithm to a machine to perform a set of tasks is vital. Beginner’s Guide to Code Algorithms: Experiments to Enhance Productivity and Solve Problems written by Deepankar Maitra teaches you how to think like a programmer. The author unravels the secret behind writing code – building a good algorithm. Algorithmic thinking leads to asking the right question and enables a shift from issue resolution to value creation. Having this mindset will make you more marketable to employers. This book takes you on a problem-solving journey to expand your mind and increase your willingness to experiment with code. You will: Learn the art of building an algorithm through hands-on exercises Understand how to develop code for inspiring productivity concepts Build a mentality of developing algorithms to solve problems Develop, test, review, and improve code through guided experimentationThis book is designed to develop a culture of logical thinking through intellectual stimulation. It will benefit students and teachers of programming, business professionals, as well as experienced users of Microsoft Excel who wish to become proficient with macros.
R 2,980.62

R 1,527.00















































