Data Structure - CS 221 - Course Outline
Data Structure - CS 221 - Course Outline
Course Instructor
Semester
Fall
Section(s)
Year
CS 221 : Data Structures & Algorithms
Course Title
Pre-Requisite/Co-Requisite
Spring
Summer
2014
BS CS
Program
Course T.A.(s)
Name
Text Book(s)
Title of Book
Author(s)
Introduction to Algorithms
Title of Book
Author(s)
[Code : B]
Title of Book
Author(s)
[Code : A]
Title of Book
Author(s)
[Code : C]
Publisher
Thomas H. Cormen et al
Publisher
Prentice-Hall
Addison-Wesley
Reference Book
Y. Langsam, M. J. Augenstein, A. M. Tenenbaum
Publisher
Prentice-Hall
Publisher
Addison-Wesley
[Code: D]
Marks Distribution
Assignments
Quizzes
Projects (1)
Midterm
Final
Total
15
10
15
20
40
100
Course Contents:
Week
Lec#
1
1
2
3
4
5
%
%
%
%
%
Topic
Introduction
Complexity Analysis
Complexity Analysis
Complexity Analysis
Abstract Data Types
>5&<10
>10
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
10
11
12
13
14
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
Arrays
Lists, Linked List implentation using arrays and pointers
Elementry Data Structures: Stack and Queues
Elementry Data Structures: Stack and Queues
Elementry Data Structures: Stack and Queues
Recursion
Time Complexity of Recursive Algorithms
Time Complexity of Recursive Algorithms
Trees: Tree Data Structure Definition and Basic terminologies
Trees: Tree Traversal, Expression trees
Trees: Binary Search Trees
Trees: AVL Trees
Trees: AVL Trees
Trees: Huffman Coding
Trees: Red Black Trees
Trees: Threaded Trees
Trees: Tries Data Structure
Trees: B-Trees
Trees: B-Trees
Set Structures
Large Polynomials and Sparse Matrices
Searching Techniques: Linear Search, Binary Search, Interpolation Search and Indeded
Sequential Search
Hashing
Hashing
Heaps: Heap Data Structure, Max and Min Heaps
Heaps: Binary and Fibanocci Heaps
Heaps: Priority Queues and Heap Sort
Sorting Techniques: Bubbler Sort, Selection Sort, Insertion Sort
Sorting Techniques: Merge Sort, Quick Sort
Sorting Techniques: Linear Time Sorting Techniques
Graphs: Basic Terminologies and Storing Graphs
Graphs: Breadth First and Depth First search traversals
Graphs: Minimum Spanning Trees (Prim's and Kruskal's Algorithm)
Graphs: Shortest Path Algorithms
Graphs: Shortest Path Algorithms
Graphs: Topoplogical Ordering
Network Flow Problems
Network Flow Problems
15
*Notes:
1) Course contents and their order may be slightly modified during the course execution.
2) No make up for missed quizzes or assignments/homeworks
3) Deadline for homeworks and projects are always final.
4) Quizes may be announced or un-announced
5) Serious action will be taken for any kind of cheating which may lead to course failure