Автор: Narasimha Karumanchi
Издательство: CareerMonk Publications
Год: 2020
Страниц: 436
Язык: английский
Формат: pdf
Размер: 10.2 MB
The study of algorithms and data structures is central to understanding what computer science is all about. Learning computer science is not unlike learning any other type of difficult subject matter. The only way to be successful is through deliberate and incremental exposure to the fundamental ideas. A beginning computer scientist needs practice so that there is a thorough understanding before continuing on to the more complex parts of the curriculum. In addition, a beginner needs to be given the opportunity to be successful and gain confidence. This textbook is designed to serve as a text for a first course on data structures and algorithms. In this book, we cover abstract data types and data structures, writing algorithms, and solving problems. We look at a number of data structures and solve classic problems that arise. The tools and techniques that you learn here will be applied over and over as you continue your study of computer science. It is not the main objective of this book to present you with the theorems and proofs on Data Structures and Algorithms. I have followed a pattern of improving the problem solutions with different complexities (for each problem, you will find multiple solutions with different, and reduced, complexities). Basically, it’s an enumeration of possible solutions. With this approach, even if you get a new question, it will show you a way to think about the possible solutions. You will find this book useful for interview preparation, competitive exams preparation, and campus interview preparations.
"Data Structure and Algorithmic Thinking with Python" is designed to give a jump-start to programmers, job hunters and those who are appearing for exams. All the code in this book are written in Python. It contains many programming puzzles that not only encourage analytical thinking, but also prepares readers for interviews. This book, with its focused and practical approach, can help readers quickly pick up the concepts and techniques for developing efficient and effective solutions to problems.
Topics Covered:
Organization of chapters
Introduction
Recursion and Backtracking
Linked Lists
Stacks
Queues
Trees
Priority Queue and Heaps
Disjoint Sets ADT
Graph Algorithms
Sorting
Searching
Selection Algorithms [Medians]
Symbol Tables
Hashing
String Algorithms
Algorithms Design Techniques
Greedy Algorithms
Divide and Conquer Algorithms
Dynamic Programming
Complexity Classes
Miscellaneous Concepts
Скачать Data Structure and Algorithmic Thinking with Python: Data Structure and Algorithmic Puzzles 2020