College of Science

Courses

Algorithm Analysis & Design

Course Code C0506 Th 4 Pr 4 CrHrs 3

                   The course covers analysis and design of fundamental data structures and engages learners to use data structures as tools to algorithmically design efficient computer programs that will cope with the complexity of actual applications.

 The course focuses on basic and essential topics in data structure Overview of implementation strategies of many data structures and their representation, insertion & deletion and other operation on many data structures, graph, traverse graph, Dijkstra algorithm, tree, binary search tree, traverse tree, searching and sorting methods, analyze the algorithms in best, average, and worst case.

Upon completion of the course, the students are expected to:

  1. Student will be able to choose appropriate data structure as applied to specified problem definition.
  2. Student will be able to handle operations like searching, insertion, deletion, traversing mechanism etc. on various data structures.
  3. Students will be able to use linear and non-linear data structures like stacks, queues, linked list.
  4. Use the techniques of algorithm analysis.
  5. Write recursive methods.
  6. Master the implementation of linked data structures such as linked lists, binary trees, graphs.
  7. Sort data using different algorithms such as quicksort, merge sort and radix sort …etc.

Find the shortest path between any two nodes.

Distribution of Marks

Final Mark

Final Exam

Second Term

Mid-Year

First Term

100

Prac.

Theor.

Prac.

Theor.

Prac.

Theor.

Prac.

Theor.

20

30

5

5

10

20

5

5

References

SN

Clifford A. Shaffer," A practical introduction to data Structures and Algorithm Analysis", 3rd edition ,2011

1

Sandeep San,” Algorithm Analysis and Design”, Indian Institute Technology, Delhi, Nov 2013

2

Hari Mohan pandey ,"Data Structure and Algorithm" ,New Delhi, 2009

3

Subject

Week

Algorithms: Analysis of algorithm

First

Basic Analysis: Asymptotic analysis of upper & average complexity bounds

Second

Space Complexity

Third

Time Complexity

Fourth

Big O, Little O, omega, and theta notation

Fifth

Searching algorithms

Sixth

Binary search

Seventh

Nawroz Holidays

Eighth

 

Ninth

Sorting algorithms

Tenth

Mid Term Examinations – Second Semester

Eleventh

Bubble Sort

Twelfth

Selection Sort

Thirteenth

Radix Sort

Fourteenth

Hashing

Fifteenth