To impart the basic concepts of data structures and algorithms
To understand concepts about searching and sorting techniques
To Understand basic concepts about stacks,queues,lists,trees and graphs
To understanding about writing algorithms and step by step approach in solving problems with the help of fundamental data structures
BCA orPGDCA orMCA orB.Tech
Preliminaries of algorithm, Algorithm analysis and complexity, Data structure- Definition, types of data structures
Definition, Design Methodology and Implementation of recursive algorithms, Linear and binary recursion, recursive algorithms for factorial function, GCD computation, Fibonacci sequence, Towers of Hanoi, Tail recursion.
List Searches using Linear Search, Binary Search, Fibonacci Search
Basic concepts, Sorting by: insertion (Insertion sort), selection (heap sort), exchange (bubble sort, quick sort), distribution (radix sort) and merging (merge sort) Algorithms.
Stacks and Queues:
Stacks: Basic Stack Operations, Representation of a Stack using Arrays, Stack Applications: Reversing list, Factorial Calculation, Infix to postfix Transformation, Evaluating Arithmetic Expressions.
Queues: Basic Queue Operations, Representation of a Queue using array, Implementation of Queue Operations using Stack, Applications of Queues- Round, Robin Algorithm, Circular Queues, Priority Queues.
Introduction, single linked list, representation of a linked list in memory, Operations on a Single linked list, Reversing a single linked list, Advantages and disadvantages of single.linked list, circular linked list, Double linked list