You are on page 1of 2

COGSWELL POLYTECHNICAL COLLEGE SWE 310 Syllabus Fall 2008 Course: DATA STRUCTURES AND ALGORITHMS Course Number:

SWE 310 Credit: 4 (3,3) Instructor: Prof. Vinh Phat Email address: vphat@cogswell.edu Office: RM 134 Office Phone: 541-5100 x 120 Office Hours: 12:30PM-1:30PM MTWTH Catalog description: Data Structures: Stacks. Queues. Linked Lists. Circular Linked Lists. Double Linked Lists. Circular Double Linked Lists. Binary Search Trees. Searching and Sorting Algorithms. Introduction to Graph Algorithms. Huffman codes, AVL trees. Hashing. B-trees. Prerequisite: SE110 Recommended Preparation by Topic: C Programming, Calculus 2. Textbook: Data Structures and Algorithms Analysis in C by Weiss (latest ed) ISBN: 0201498405 Publisher: Addison Wesley Longman, Inc. References: Data Structures: An Advanced Approach Using C by Esakov and Weisss Fundamentals of Data Structures in C by Horowitz et al. Data Structures and Algorithms by Aho et al. Course Objectives: After completing this course, the students will be able to understand and apply concepts of linked lists, stacks, queues, trees, graphs in solving and programming applications. Furthermore, they will be able to do analysis of some algorithms. Topics: Some mathematical background notations. Lists. Advanced List Structures. Stacks. Queues. Binary trees. AVL trees. 2-3 trees. Sorting and Searching Algorithms. Graph Algorithms. B-trees. Program Learning Outcomes Addressed by the Course:

Apply mathematics, sciences, and engineering principles to define and solve engineering problems

Use tools, techniques, skills and resources to design systems, components, software, and processes to satisfy desired specifications

Activities that Help Meet the Program Learning Outcomes : Students will design and implement abstract data type POLYNOMIALS, Parenthesis Checker, Mathematical Notation Translation, Expression Evaluator, a software to compare Sorting Algorithms. And a cross reference generator, Graph algorithms. Students will be assigned reading materials and on the legal and ethical issues in Software Engineering.

Methods used to access the effectiveness of the activities in supporting the program learning outcomes: Students' work will be evaluated by their success in delivering the software projects on time with demonstration in the lab. Also the analysis of algorithms will be graded throughout the whole term to be sure students apply mathematics in the analysis of algorithms. Classroom Methods: 1. 2. 3. 4. Weekly lectures which introduce data structures and algorithms. Weekly labs and demonstrations of implementations of data structures and algorithms. Weekly homework to do analysis of algorithms. Internet Research.

Grading is based on: Programming Assignments: 30% Midterm: 30% Comprehensive final exam: 40% 90-100: 76-77+: A 88-89+: C+ 70-75+: A- 86-87+: B+ 80-85+: B 78-79+: BC 68-69+: C- 65-67+ : D 0-64+ : F

Library Usage: Library materials required for the course: reference materials. Computer Usage: Hardware: PC with Windows OS. Software: The C or C++ or Java Compiler.

You might also like