You are on page 1of 2

Proceedings of the 26th Academic Council held on 18.5.

2012

Version No.

CSC503 DATASTRUCTURESANDALGORITHMS

LTPC
3 0 2 4

1.0

Course
Prerequisites:
Objectives:
1
2

To make the students learn various types of data structures. The students would be able to
implement various data structures and apply operations on them and also implement
various sorting and searching techniques.
To make the students learn various types of algorithms and their related time complexity
issues

Expected Outcome:
1 The students should be able to solve real life computing problems by using data structures
2 The students should be able to write efficient algorithms and design techniques to solve
problems
3 The students should be able to have a sense of complexities of various problems
Unit No. 1
OverviewofBasicDataStructures:
Asymptotic notations, Growth of functions, Recurrences: Substitution method, iteration method
and master method, statement of master theorem, Recurrence tree method.
Sorting algorithms: Quick sort, Heap sort, Counting sort, Shell sort, Merge sort.
Unit No. 2
AdvancedDataStructures&SortingAlgorithms
Advanced Data Structures: Heaps binary and Fibonacci, binary search tree, AVL trees, RedBlack trees, B- trees.
Unit No. 3
GreedyAlgorithms&DynamicProgramming
Greedy Algorithms: Activity-selection problem, Huffman codes, Tree vertex splitting problem,
Job sequencing with dead lines-Fractional knapsack problem.
Dynamic Programming:
Matrix-chain Multiplication, Longest common Subsequence, 0-1 Knapsack problem, Travelling
Salesman problem, Multistage graphs.
Unit No. 4
GraphAlgorithms
Graph algorithms: Breadth-first, depth-first, minimal spanning tree - Kruskal and Prim
algorithms, Single-Source Shortest Paths Bellman-Ford Algorithm, Dijkstra Algorithm, Floyd
Warshall Algorithm.
Unit No.5
NPProblems
Class P, Polynomial time verification, reducibility, NP-Hard, NP-completeness, Cooks theorem
(no proof), NP-complete problems: Circuit Sat, 3Sat-CNF, Clique, vertex-cover and subset sum.

359

Proceedings of the 26th Academic Council held on 18.5.2012

Text/Reference Books:
1. Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein, Introduction to
Algorithms, Prentice Hall of India, Third Edition, 2009.
2. Sahni, Data Structures, Algorithms and applications in C++, 2nd Edition, Pearson Education,
2007
3. M.A. Weiss, Data Structures & Algorithm Analysis in C++, 2nd Edition, 2005.
4. Alfred V. Aho, Hopcroft and J. D. Ullman, The Design and Analysis of Algorithms, Low Price
Edition, 10th Edition, 2004.
Mode of Evaluation:

By assignment, and Continuous Assessment Tests (CAT)

Recommended by the
Board of Studies on
Date of Approval by the
Academic Council
DATASTRUCTURESANDALGORITHMSLAB

Lab Exercises can be framed covering the syllabus.

360

You might also like