CS 340.001

Algorithms and Data Structures

Spring 2011

MW 1:30-2:45 PM

EB 1012

Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: http://ec1.images-amazon.com/images/P/032144146X.01._SCLZZZZZZZ_.jpg

Textbook: Data Structures and Algorithm Analysis in C++ (3rd) by Mark Allen Weiss

Instructor: Bill White

EB 3041

wwhite@siue.edu

(618)650-3483

MTWR 8:30-11:30 AM

Course Description: Considers appropriate choice of data structures, comparisons of algorithms, recursive algorithms, complexity, introduction to parallel algorithms.

Prerequisite: CS 240, Math 150, and Math 224, all with a minimum grade of C.

Course Objectives:

* Examine several "tricks of the trade" for organizing data and solving problems via programming, including recursion, divide-and-conquer, greedy, and dynamic programming algorithms.

* Explore mechanisms for analyzing the efficiency of complex software and the tradeoffs between various data structures and design strategies.

TENTATIVE SCHEDULE

MONDAYS

WEDNESDAYS

1/10

Ch. 1: Introduction

 

1/12

Ch. 2: Algorithm Analysis

 

1/17

MARTIN LUTHER KING, JR., DAY

1/19

Ch.2: Running Time

HW 1 Due

1/24

Ch. 3: Lists

Linked List Example Code

Sorted List Example Code

STL List Example Code

STL Vector Example Code

 

1/26

Ch. 3: Stacks & Queues

HW 2 Due

1/31

Ch. 4: Binary Trees

Program 1 Due

Program 1 Material

2/2

Ch. 4: AVL Trees

HW 3 Due

2/7

Ch. 4: Splay Trees/B-Trees

STL Set Example Code

 

2/9

EXAM 1 (Chapters 1-4)

2/14

Ch. 5: Hashing

 

2/16

Ch.5: Probing/Rehashing

 

2/21

Ch. 6: Priority Queues

HW 4 Due

2/23

Ch. 6: Heap Operations

Program 2 Due

Program 2 Material

2/28

Ch. 7: Insertion/Shell Sorts

HW 5 Due

3/2

Ch.7: Heap/Merge Sorts

 

3/7

SPRING BREAK

3/9

SPRING BREAK

3/14

Ch.7: Quick Sort

HW 6 Due

3/16

Ch.8: Disjoint Sets

 

3/21

EXAM 2 (Chapters 5-8)

3/23

Ch. 9: Graphs

 

3/28

Ch. 9: Shortest Paths

Program 3 Due

Program 3 Material

3/30

Ch.9: Spanning Trees

HW 7 Due

4/4

Ch.9: NP-Completeness

 

4/6

Ch. 10: Greedy Algorithms

HW 8 Due

4/11

Ch. 10: Divide & Conquer

 

4/12

Ch. 10: Dynamic Prog.

HW 9 Due

4/18

Ch. 10: Randomized Algs.

 

4/20

EXAM 3 (Chapters 9-10)

4/25

Parallel Algorithms

Program 4 Due

(Program 4 Materials)

4/27

SIMD & MIMD

HW 10 Due

 

 

 

5/4

FINAL EXAM (12:00-1:40 PM)

 

 

 

 

 

 

GRADING (A:900-1000 points; B: 800-899 points; C: 700-799 points; D: 600-699 points; F: 0-599 points)

Programs

(4@100 points)

400 points

Exams

(3@100 points)

300 points

All programs will be uploaded to Moodle dropboxes at classes.cs.siue.edu by the designated deadline. Late assignments are not accepted.

Regular exams are not comprehensive, dealing only with material covered since the previous exam. Exams are closed-book and closed-notes.

Homeworks

(10@15 points)

150 points

Final Exam

(1@150 points)

150 points

Homework assignments may only be discussed with the instructor. Late assignments are not accepted.

The final exam is comprehensive, covering the entire course. It is also closed-book and closed-notes.

 

 

 

 

 

 

CLASSROOM DECORUM POLICIES

Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: http://www.clker.com/cliparts/e/e/4/f/1206558994350927690taber_No_Cell_Phones_Allowed.svg.hi.png

Cell phone conversations, text messaging, and audible cell phone ringing are forbidden in the classroom at all times.

Consuming food or beverages is forbidden in the classroom at all times.

Use of laptop computers is forbidden during class without express permission of the instructor.

Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: http://globalvillagebrisbane.files.wordpress.com/2008/08/no_talking1.jpg

Conversations with other students are forbidden during class without express permission of the instructor.

One violation of any of these rules results in the immediate ejection of the student from that day's class (even on exam days). A second violation results in the student's disenrollment from the course.