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

Data Science Projects with Python
Gain hands-on experience of Python programming with industry-standard machine learning techniques using pandas, scikit-learn, and XGBoostKey FeaturesThink critically about data and use it to form and test a hypothesisChoose an appropriate machine learning model and train it on your dataCommunicate data-driven insights with confidence and clarityBook DescriptionIf data is the new oil, then machine learning is the drill. As companies gain access to ever-increasing quantities of raw data, the ability to deliver state-of-the-art predictive models that support business decision-making becomes more and more valuable.In this book, you’ll work on an end-to-end project based around a realistic data set and split up into bite-sized practical exercises. This creates a case-study approach that simulates the working conditions you’ll experience in real-world data science projects.You’ll learn how to use key Python packages, including pandas, Matplotlib, and scikit-learn, and master the process of data exploration and data processing, before moving on to fitting, evaluating, and tuning algorithms such as regularized logistic regression and random forest.Now in its second edition, this book will take you through the end-to-end process of exploring data and delivering machine learning models. Updated for 2021, this edition includes brand new content on XGBoost, SHAP values, algorithmic fairness, and the ethical concerns of deploying a model in the real world.By the end of this data science book, you’ll have the skills, understanding, and confidence to build your own machine learning models and gain insights from real data.What you will learnLoad, explore, and process data using the pandas Python packageUse Matplotlib to create compelling data visualizationsImplement predictive machine learning models with scikit-learnUse lasso and ridge regression to reduce model overfittingEvaluate random forest and logistic regression model performanceDeliver business insights by presenting clear, convincing conclusionsWho this book is forData Science Projects with Python – Second Edition is for anyone who wants to get started with data science and machine learning. If you’re keen to advance your career by using data analysis and predictive modeling to generate business insights, then this book is the perfect place to begin. To quickly grasp the concepts covered, it is recommended that you have basic experience of programming with Python or another similar language, and a general interest in statistics.
R 1,335.00

R 1,652.93

Head First Algorithms and Data Structures
What will you learn from this book?Successful software engineers all have this in common: They're fluent in the language of algorithms and data structures. Head First Algorithms and Data Structures is your gateway to becoming a part of this dynamic world. Guided by the expert insights of Eric Freeman and Elisabeth Robson, you'll unravel the complexities of algorithms and data structures through games, puzzles, and other entertaining challenges that will have you coding efficiently, scaling effectively, and acing your technical interviews in no time.What's so special about this book?If you've read a Head First book, you know what to expect: a visually rich format designed for the way your brain works. If you haven't, you're in for a treat. Whether you're taking your first steps in programming or seeking to hone your skills, you'll solidify your algorithmic thinking through a multisensory experience that engages your mind—not a text-heavy approach that puts you to sleep.
R 1,978.00


Data Structures and Algorithms Using C#
C# programmers: no more translating data structures from C++ or Java to use in your programs! Mike McMillan provides a tutorial on how to use data structures and algorithms plus the first comprehensive reference for C# implementation of data structures and algorithms found in the .NET Framework library, as well as those developed by the programmer. The approach is very practical, using timing tests rather than Big O notation to analyze the efficiency of an approach. Coverage includes arrays and array lists, linked lists, hash tables, dictionaries, trees, graphs, and sorting and searching algorithms, as well as more advanced algorithms such as probabilistic algorithms and dynamic programming. This is the perfect resource for C# professionals and students alike.
R 5,694.38

R 2,097.00

Data Structures using C
The data structure is a set of specially organized data elements and functions, which are defined to store, retrieve, remove and search for individual data elements. Data Structures using C: A Practical Approach for Beginners covers all issues related to the amount of storage needed, the amount of time required to process the data, data representation of the primary memory and operations carried out with such data. Data Structures using C: A Practical Approach for Beginners book will help students learn data structure and algorithms in a focused way. Resolves linear and nonlinear data structures in C language using the algorithm, diagrammatically and its time and space complexity analysis Covers interview questions and MCQs on all topics of campus readiness Identifies possible solutions to each problem Includes real-life and computational applications of linear and nonlinear data structuresThis book is primarily aimed at undergraduates and graduates of computer science and information technology. Students of all engineering disciplines will also find this book useful.
R 7,591.29

R 1,207.25

R 580.00

Data structures based on non-linear relations and data processing methods
The systematic description starts with basic theory and applications of different kinds of data structures, including storage structures and models. It also explores on data processing methods such as sorting, index and search technologies. Due to its numerous exercises the book is a helpful reference for graduate students, lecturers.
R 2,638.45

50 Algorithms Every Programmer Should Know
Delve into the realm of generative AI and large language models (LLMs) while exploring modern deep learning techniques, including LSTMs, GRUs, RNNs with new chapters included in this 50% new edition overhaulPurchase of the print or Kindle book includes a free eBook in PDF format.Key FeaturesFamiliarize yourself with advanced deep learning architecturesExplore newer topics, such as handling hidden bias in data and algorithm explainabilityGet to grips with different programming algorithms and choose the right data structures for their optimal implementationBook DescriptionThe ability to use algorithms to solve real-world problems is a must-have skill for any developer or programmer. This book will help you not only to develop the skills to select and use an algorithm to tackle problems in the real world but also to understand how it works.You'll start with an introduction to algorithms and discover various algorithm design techniques, before exploring how to implement different types of algorithms, with the help of practical examples. As you advance, you'll learn about linear programming, page ranking, and graphs, and will then work with machine learning algorithms to understand the math and logic behind them.Case studies will show you how to apply these algorithms optimally before you focus on deep learning algorithms and learn about different types of deep learning models along with their practical use.You will also learn about modern sequential models and their variants, algorithms, methodologies, and architectures that are used to implement Large Language Models (LLMs) such as ChatGPT.Finally, you'll become well versed in techniques that enable parallel processing, giving you the ability to use these algorithms for compute-intensive tasks.By the end of this programming book, you'll have become adept at solving real-world computational problems by using a wide range of algorithms.What you will learnDesign algorithms for solving complex problemsBecome familiar with neural networks and deep learning techniquesExplore existing data structures and algorithms found in Python librariesImplement graph algorithms for fraud detection using network analysisDelve into state-of-the-art algorithms for proficient Natural Language Processing illustrated with real-world examplesCreate a recommendation engine that suggests relevant movies to subscribersGrasp the concepts of sequential machine learning models and their foundational role in the development of cutting-edge LLMsWho this book is forThis computer science book is for programmers or developers who want to understand the use of algorithms for problem-solving and writing efficient code.Whether you are a beginner looking to learn the most used algorithms concisely or an experienced programmer looking to explore cutting-edge algorithms in data science, machine learning, and cryptography, you'll find this book useful.Python programming experience is a must, knowledge of data science will be helpful but not n
R 1,628.00




R 2,870.00

Data Structures and Algorithms Using C#
C# programmers: no more translating data structures from C++ or Java to use in your programs! Mike McMillan provides a tutorial on how to use data structures and algorithms plus the first comprehensive reference for C# implementation of data structures and algorithms found in the .NET Framework library, as well as those developed by the programmer. The approach is very practical, using timing tests rather than Big O notation to analyze the efficiency of an approach. Coverage includes arrays and array lists, linked lists, hash tables, dictionaries, trees, graphs, and sorting and searching algorithms, as well as more advanced algorithms such as probabilistic algorithms and dynamic programming. This is the perfect resource for C# professionals and students alike.
R 2,979.47

Problems on Algorithms
With approximately 2500 problems, this book provides a collection of practical problems on the basic and advanced data structures, design, and analysis of algorithms. To make this book suitable for self-instruction, about one-third of the algorithms are supported by solutions, and some others are supported by hints and comments. This book is intended for students wishing to deepen their knowledge of algorithm design in an undergraduate or beginning graduate class on algorithms, for those teaching courses in this area, for use by practicing programmers who wish to hone and expand their skills, and as a self-study text for graduate students who are preparing for the qualifying examination on algorithms for a Ph.D. program in Computer Science or Computer Engineering. About all, it is a good source for exam problems for those who teach algorithms and data structure. The format of each chapter is just a little bit of instruction followed by lots of problems. This book is intended to augment the problem sets found in any standard algorithms textbook. This book • begins with four chapters on background material that most algorithms instructors would like their students to have mastered before setting foot in an algorithms class. The introductory chapters include mathematical induction, complexity notations, recurrence relations, and basic algorithm analysis methods. • provides many problems on basic and advanced data structures including basic data structures (arrays, stack, queue, and linked list), hash, tree, search, and sorting algorithms. • provides many problems on algorithm design techniques: divide and conquer, dynamic programming, greedy algorithms, graph algorithms, and backtracking algorithms. • is rounded out with a chapter on NP-completeness.
R 2,564.00


R 3,025.42

Algorithms for Functional Programming
This book presents a variety of widely used algorithms, expressing them in a pure functional programming language to make their structure and operation clearer to readers. In the opening chapter the author introduces the specific notations that constitute the variant of Scheme that he uses. The second chapter introduces many of the simpler and more general patterns available in functional programming. The chapters that follow introduce and explain data structures, sorting, combinatorial constructions, graphs, and sublist search.Throughout the book the author presents the algorithms in a purely functional version of the Scheme programming language, which he makes available on his website. The book is supported with exercises, and it is suitable for undergraduate and graduate courses on programming techniques.
R 3,907.74


Advanced Data Structures
This text closely examines ideas, analysis, and implementation details of data structures as a specialised topic in applied algorithms. It looks at efficient ways to realise query and update operations on sets of numbers, intervals, or strings by various data structures, including: search trees; structures for sets of intervals or piece-wise constant functions; orthogonal range search structures; heaps; union-find structures; dynamization and persistence of structures; structures for strings; and hash tables. Instead of relegating data structures to trivial material used to illustrate object-oriented programming methodology, this is the first volume to show data structures as a crucial algorithmic topic. Numerous code examples in C and more than 500 references make Advanced Data Structures an indispensable text.
R 2,761.27

40 Algorithms Every Programmer Should Know
Learn algorithms for solving classic computer science problems with this concise guide covering everything from fundamental algorithms, such as sorting and searching, to modern algorithms used in machine learning and cryptographyKey FeaturesLearn the techniques you need to know to design algorithms for solving complex problemsBecome familiar with neural networks and deep learning techniquesExplore different types of algorithms and choose the right data structures for their optimal implementationBook DescriptionAlgorithms have always played an important role in both the science and practice of computing. Beyond traditional computing, the ability to use algorithms to solve real-world problems is an important skill that any developer or programmer must have. This book will help you not only to develop the skills to select and use an algorithm to solve real-world problems but also to understand how it works.You’ll start with an introduction to algorithms and discover various algorithm design techniques, before exploring how to implement different types of algorithms, such as searching and sorting, with the help of practical examples. As you advance to a more complex set of algorithms, you'll learn about linear programming, page ranking, and graphs, and even work with machine learning algorithms, understanding the math and logic behind them. Further on, case studies such as weather prediction, tweet clustering, and movie recommendation engines will show you how to apply these algorithms optimally. Finally, you’ll become well versed in techniques that enable parallel processing, giving you the ability to use these algorithms for compute-intensive tasks.By the end of this book, you'll have become adept at solving real-world computational problems by using a wide range of algorithms.What you will learnExplore existing data structures and algorithms found in Python librariesImplement graph algorithms for fraud detection using network analysisWork with machine learning algorithms to cluster similar tweets and process Twitter data in real timePredict the weather using supervised learning algorithmsUse neural networks for object detectionCreate a recommendation engine that suggests relevant movies to subscribersImplement foolproof security using symmetric and asymmetric encryption on Google Cloud Platform (GCP)Who this book is forThis book is for programmers or developers who want to understand the use of algorithms for problem-solving and writing efficient code. Whether you are a beginner looking to learn the most commonly used algorithms in a clear and concise way or an experienced programmer looking to explore cutting-edge algorithms in data science, machine learning, and cryptography, you'll find this book useful. Although Python programming experience is a must, knowledge of data science will be helpful but not necessary.
R 1,693.00

Data Science Fundamentals for Python and MongoDB
Build the foundational data science skills necessary to work with and better understand complex data science algorithms. This example-driven book provides complete Python coding examples to complement and clarify data science concepts, and enrich the learning experience. Coding examples include visualizations whenever appropriate. The book is a necessary precursor to applying and implementing machine learning algorithms. The book is self-contained. All of the math, statistics, stochastic, and programming skills required to master the content are covered. In-depth knowledge of object-oriented programming isn’t required because complete examples are provided and explained.Data Science Fundamentals with Python and MongoDB is an excellent starting point for those interested in pursuing a career in data science. Like any science, the fundamentals of data science are a prerequisite to competency. Without proficiency in mathematics, statistics, data manipulation, and coding, the path to success is “rocky” at best. The coding examples in this book are concise, accurate, and complete, and perfectly complement the data science concepts introduced. What You'll LearnPrepare for a career in data scienceWork with complex data structures in PythonSimulate with Monte Carlo and Stochastic algorithmsApply linear algebra using vectors and matricesUtilize complex algorithms such as gradient descent and principal component analysisWrangle, cleanse, visualize, and problem solve with dataUse MongoDB and JSON to work with dataWho This Book Is ForThe novice yearning to break into the data science world, and the enthusiast looking to enrich, deepen, and develop data science skills through mastering the underlying fundamentals that are sometimes skipped over in the rush to be productive. Some knowledge of object-oriented programming will make learning easier.
R 798.00

Algorithms for Functional Programming
This book presents a variety of widely used algorithms, expressing them in a pure functional programming language to make their structure and operation clearer to readers. In the opening chapter the author introduces the specific notations that constitute the variant of Scheme that he uses. The second chapter introduces many of the simpler and more general patterns available in functional programming. The chapters that follow introduce and explain data structures, sorting, combinatorial constructions, graphs, and sublist search.Throughout the book the author presents the algorithms in a purely functional version of the Scheme programming language, which he makes available on his website. The book is supported with exercises, and it is suitable for undergraduate and graduate courses on programming techniques.
R 2,763.70

Advanced Data Structures
This text closely examines ideas, analysis, and implementation details of data structures as a specialised topic in applied algorithms. It looks at efficient ways to realise query and update operations on sets of numbers, intervals, or strings by various data structures, including: search trees; structures for sets of intervals or piece-wise constant functions; orthogonal range search structures; heaps; union-find structures; dynamization and persistence of structures; structures for strings; and hash tables. Instead of relegating data structures to trivial material used to illustrate object-oriented programming methodology, this is the first volume to show data structures as a crucial algorithmic topic. Numerous code examples in C and more than 500 references make Advanced Data Structures an indispensable text.
R 4,161.24

Foundations of Multidimensional and Metric Data Structures
Foundations of Multidimensional and Metric Data Structures provides a thorough treatment of multidimensional point data, object and image-based representations, intervals and small rectangles, and high-dimensional datasets. The book includes a thorough introduction; a comprehensive survey to spatial and multidimensional data structures and algorithms; and implementation details for the most useful data structures. Each section includes a large number of exercises and solutions to self-test and confirm the reader's understanding and suggest future directions. The book is an excellent and valuable reference tool for professionals in many areas, including computer graphics, databases, geographic information systems (GIS), game programming, image processing, pattern recognition, solid modeling, similarity retrieval, and VLSI design.
R 2,471.00

Data Structures and Efficient Algorithms
Algorithms are a central concept in computer science. TheGerman Science Foundation (DFG) started a special jointinitiative on data structures and efficient algorithms in1986 with the aim of encouraging collaborative research onalgorithms. For a period of five years about a dozenprojects were funded with an emphasis on algorithms and datastructures for geometric problems, on the one hand, andparallel and distributed algorithms, on the other.This volume contains 18 papers that are intended to give animpression of the achievements of this joint researchinitiative. The first group of papers addresses research onfundamental data structures, computational geometry, graphalgorithms, computer graphics, and spatial databases. Thesecond group of papers centers on the following problems:the design of parallel architectures and routing strategies,simulation of parallel machines, and the design ofdistributed algorithms for solving difficult problems.
R 1,573.86


R 611.00

125 Problems in Text Algorithms
String matching is one of the oldest algorithmic techniques, yet still one of the most pervasive in computer science. The past 20 years have seen technological leaps in applications as diverse as information retrieval and compression. This copiously illustrated collection of puzzles and exercises in key areas of text algorithms and combinatorics on words offers graduate students and researchers a pleasant and direct way to learn and practice with advanced concepts. The problems are drawn from a large range of scientific publications, both classic and new. Building up from the basics, the book goes on to showcase problems in combinatorics on words (including Fibonacci or Thue-Morse words), pattern matching (including Knuth-Morris-Pratt and Boyer-Moore like algorithms), efficient text data structures (including suffix trees and suffix arrays), regularities in words (including periods and runs) and text compression (including Huffman, Lempel-Ziv and Burrows-Wheeler based methods).
R 4,343.03

Machine Learning for Decision Sciences with Case Studies in Python
This book provides a detailed description of machine learning algorithms in data analytics, data science life cycle, Python for machine learning, linear regression, logistic regression, and so forth. It addresses the concepts of machine learning in a practical sense providing complete code and implementation for real-world examples in electrical, oil and gas, e-commerce, and hi-tech industries. The focus is on Python programming for machine learning and patterns involved in decision science for handling data. Features: Explains the basic concepts of Python and its role in machine learning. Provides comprehensive coverage of feature engineering including real-time case studies. Perceives the structural patterns with reference to data science and statistics and analytics. Includes machine learning-based structured exercises. Appreciates different algorithmic concepts of machine learning including unsupervised, supervised, and reinforcement learning.This book is aimed at researchers, professionals, and graduate students in data science, machine learning, computer science, and electrical and computer engineering.
R 11,219.02

Exercises in Programming Style
The first edition of Exercises in Programming Style was honored as an ACM Notable Book and praised as "The best programming book of the decade." This new edition retains the same presentation but has been upgraded to Python 3, and there is a new section on neural network styles.Using a simple computational task (term frequency) to illustrate different programming styles, Exercises in Programming Style helps readers understand the various ways of writing programs and designing systems. It is designed to be used in conjunction with code provided on an online repository. The book complements and explains the raw code in a way that is accessible to anyone who regularly practices the art of programming. The book can also be used in advanced programming courses in computer science and software engineering programs.The book contains 40 different styles for writing the term frequency task. The styles are grouped into ten categories: historical, basic, function composition, objects and object interactions, reflection and metaprogramming, adversity, data-centric, concurrency, interactivity, and neural networks. The author states the constraints in each style and explains the example programs. Each chapter first presents the constraints of the style, next shows an example program, and then gives a detailed explanation of the code. Most chapters also have sections focusing on the use of the style in systems design as well as sections describing the historical context in which the programming style emerged.
R 6,681.92


R 428.00


Machine Learning for Decision Sciences with Case Studies in Python
This book provides a detailed description of machine learning algorithms in data analytics, data science life cycle, Python for machine learning, linear regression, logistic regression, and so forth. It addresses the concepts of machine learning in a practical sense providing complete code and implementation for real-world examples in electrical, oil and gas, e-commerce, and hi-tech industries. The focus is on Python programming for machine learning and patterns involved in decision science for handling data. Features: Explains the basic concepts of Python and its role in machine learning. Provides comprehensive coverage of feature engineering including real-time case studies. Perceives the structural patterns with reference to data science and statistics and analytics. Includes machine learning-based structured exercises. Appreciates different algorithmic concepts of machine learning including unsupervised, supervised, and reinforcement learning.This book is aimed at researchers, professionals, and graduate students in data science, machine learning, computer science, and electrical and computer engineering.
R 3,975.42


R 2,177.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

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

Common-Sense Guide to Data Structures and Algorithms in Javascript, Volume 1
If you thought data structures and algorithms were all just theory, you're missing out on what they can do for your JavaScript 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 JavaScript edition uses JavaScript exclusively for all code examples, exercises, 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 JavaScript code faster and more scalable. What You Need: Certain code examples take advantage of recently introduced JavaScript features. Therefore, it's important to use a JavaScript environment that supports ECMAScript 6+ or a newer version.
R 2,421.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

Algorithms
The leading introduction to computer algorithms in use today, including fifty algorithms every programmer should know Princeton Computer Science professors, Robert Sedgewick and Kevin Wayne, survey the most important computer algorithms in use and of interest to anyone working in science, mathematics, and engineering, and those who use computation in the liberal arts. They provide a full treatment of data structures and algorithms for key areas that enable you to confidently implement, debug, and put them to work in any computational environment. Fundamentals: Basic programming modelsData abstractionBags, queues, and stacksAnalysis of algorithms Sorting Elementary sortsMergesortQuicksortPriority queuesApplications Graphs Undirected graphsDirected graphsMinimum spanning treesShortest paths Strings String sortsTriesSubstring searchRegular expressionsData compression These algorithms are generally ingenious creations that, remarkably, can each be expressed in just a dozen or two lines of code. As a group, they represent problem-solving power of amazing scope. They have enabled the construction of computational artifacts, the solution of scientific problems, and the development of commercial applications that would not have been feasible without them.
R 1,785.00













































