Wiley-ISTE, 2022. — 304 p. — ISBN: 978-1-78630-891-7.
Data structures and algorithms is a fundamental course in Computer Science, which enables learners across any discipline to develop the much-needed foundation of efficient programming, leading to better problem-solving in their respective disciplines.
Most of the well-known textbooks/monographs on this subject have discussed the concepts of a programming language – beginning with Pascal and spanning a spectrum of them such as C, C++, C#, Java, Python, and so on, essentially calling for ample knowledge of the language before one proceeds to try and understand the data structure. There does remain a justification for this. The implementation of data structures in the specific programming language needs to be demonstrated or the algorithms about the data structures concerned need a convenient medium of presentation when this is the case, why not a programming language?
Again, while some authors have insisted on using their books for an advanced level course, some insist on a working knowledge of the specific programming language as a prerequisite to using the book. However, in the case of a core course, as it is in most academic programs, it is not uncommon for a novice or a sophomore to be bewildered by the “miles of code” that demonstrate or explain a data structure, rendering the subject difficult to comprehend. The efforts that one needs to put in to comprehend the data structure and its applications are distracted by the necessity to garner sufficient programming knowledge to follow the code. It is indeed ironic that while a novice is taught data structures to appreciate programming, in reality, it turns out that one learns programming to appreciate data structures!
A Textbook of Data Structures and Algorithms is a textbook that can be used as course material in classrooms, or as self-learning material. The book targets novice learners aspiring to acquire advanced knowledge of the topic. Therefore, the content of the book has been pragmatically structured across three volumes and kept comprehensive enough to help them in their progression from novice to expert.
With this in mind, the book details concepts, techniques, and applications of data structures and algorithms, independent of any programming language. It includes 181 illustrative problems and 276 review questions to reinforce a theoretical understanding and presents a suggestive list of 108 programming assignments to aid in the implementation of the methods covered.