Chapter 1 gives an introduction to programming, data structures, and related concepts. This chap-
ter covers the various types of data structures, structured programming, and development of software
through the software engineering approach.
Chapter 2 acquaints the reader with the concept of arrays, which is the most popular and easy-to-use
static data structure. Arrays are found in almost every high-level programming language as a built-in
data structure. This chapter describes arrays with respect to applications such as polynomials, strings,
and sparse matrices.
Chapter 3 covers the stack and its implementation as a static data structure. Applications of stacks,
such as recursion and infix expression conversion, are discussed.
Chapter 4 covers recursion and related concepts. This chapter helps us understand, evaluate, and
implement recursive functions. It also elaborates on how recursion works.
Chapter 5 illustrates the concept, realization, variations, and applications of queues. A queue is a
special type of data structure that performs insertions at one end called the ‘rear’ and deletions at another
end called the ‘front’.
Chapter 6 covers the basic concepts and realization of the linked list. This dynamic data structure is
a powerful tool and is described with respect to applications such as polynomials, strings, and sorting.
Chapter 7 deals with trees. A non-linear data structure, the tree is a means to maintain and manipulate
data in many applications. Non-linear data structures are capable of expressing more complex relationships
than linear data structures. Variations, implementation, and applications of trees are covered in this chapter.
Chapter 8 introduces the graph, its representation, traversal techniques, and algorithms used to pro-
cess it. In many areas of application such as cartography, sociology, chemistry, geography, mathematics,
electrical engineering, and computer science, we often need a representation that reflects arbitrary rela-
tionships among the objects. One of the most powerful and natural solutions that models such relation-
ships is the graph.