New First Edition Takes Computer Science to the Next Level

Introduction to Algorithms and Data Structures cover image.
ComputingMath
Reading Time: 2 minutes

Once students have mastered basic programming patterns in a programming language, they have one more hurdle to clear: learning how to use those patterns to solve problems. In order for students to solve these problems, they need to know which patterns to apply. This is where algorithms and data structures play an important role. Professor Michaelle Perez, author of the new, first edition title, “Introduction to Algorithms and Data Structures”, understands the significance of this role. This title helps students develop familiarity with data structures and algorithms, so they can work through complicated problems using a programming language’s basic control flow and loops.

About Michaelle Perez, author of Introduction to Algorithms and Data Structures

This first edition was written by Michaelle Perez, a professor of Biomedical Engineering at Galileo University. He has taught mathematics and computer science for the last twenty years. His main interest has been helping students develop the skills necessary to learn and tackle complex problems. He has taught a wide range of mathematics and computer science topics to students from high school through graduate school-level. His current research interest is in the applications of computer vision through deep learning, specifically biomedical images.

Problem-solving fundamentals in first edition text

Professor Perez has authored a text which presents fundamental concepts for students who are interested in applying computer programming to problem-solving. Additionally, this title provides a strong foundation for students who want to study more specialized structures and advanced algorithms, or simply prep for their technical interview.

Students can explore and learn how to apply several common algorithms and techniques including, backtracking, depth-first, breadth-first, recursion, divide and conquer and dynamic programming. These ideas have proven to be powerful tools when working through diverse problems. For example, the breadth-first pattern that uses recursion can be used for searching in a telecommunications network to separate an object of interest in computer vision.

Notable characteristics

This text includes various features and characteristics from which students will benefit:

  • Time complexity and the Big O notation: These concepts introduced early in the text using an intuitive presentation so that students can weigh the benefits of using a given algorithm. This early placement also illustrates the  benefits of using more elaborate data structures, such as AVL trees and heaps, when implementing a solution.
  • Language-agnostic concepts: Students can focus on the big-picture ideas, setting aside technical details of a specific programming language. Algorithms are presented in a way that makes it easy to take the pseudocode and implement it in various programming languages. Professor Perez has dedicated special attention to making the description of data structures and algorithms useful to different programming languages and paradigms.
  • Illustrative cases: Most algorithms are described in small, concrete cases that illustrate how and why the algorithm works. A more formal algorithm is then presented through a pseudocode implementation, also applicable to data structures. Implementations of all data structures presented in the book are provided, starting with simple user-defined data types, pointers and arrays.

 

Interested in “Introduction to Algorithms and Data Structures”  for your computer science course? Explore this first edition to learn more.