CS 240 - Introduction to Computing III

Fall 2001 – 3 Credit Hours

 

Prerequisite:               CS 150

 

Time and Place:          TR       11:00 – 12:15   PM      EB 2011

                                   

            Instructor:                   Xudong William Yu

                        Engineering Building 3039

                        (618) 650-2321

                        Email: xyu@siue.edu

                        URL: www.cs.siue.edu/xyu

 

Office Hours:             MTWR            1:00 – 3:00       PM

(Or by appointment)                                        

 

Teaching Assistant:   Hua Kang

 

TA Office & Hour:     TBA

 

            Text Books:                “Data Abstraction and Problem Solving with C++”, 2nd edition, by Carrano, Helman, and Veroff.

 

Overview:

 

This is the 3rd in a three-course sequence in Introduction to Computing. It expands the concept of an abstract data type, using the traditional structures of stacks, queues, trees, and graphs as practical examples.  The use of recursion is also explored, and the ability to evaluate the time complexity of relatively sophisticated algorithms is developed. 

 

Electronic Communication:

 

The instructor will place class material (e.g., assignments, examples, announcements, etc)  on the SOE network at csfs2\classes\CS\CS240\Yu.  Students can access this information either from the above folder or on the Internet at \\csfs2.siue.edu\classes.  Students are expected to check the folder between classes for new class notes, assignments, and examples.

 

Class Attendance:

 

For students to gain understanding of the material presented in the course, regular class attendance is essential. Students are expected to attend all classes and arrive on time.  Any student who arrives late to class must see the instructor immediately after the class. Except for an emergency, any student who needs to leave the class early must notify the instructor prior to the start of the class.

 

 

 

 

Assignments:

 

Computer assignments will be given approximately once every two weeks.  Most assignments will require the submission of both a hard copy and a soft copy. The soft copy must be placed on the department server (in dropbox on ‘csfs2’\CS240-001\your_folder) before the due time.  Retain all source programs until a graded program printout is returned to you.  A 10% penalty will be applied for each day the program is late, including weekends, prior to the instructor’s grading.  No program will be accepted after the instructor/TA has graded the class’s programs.  Students are expected to do their own work.  Copying of other people's work for tests, quizzes, or lab work will result in the assignment of a zero grade. 

 

Tests:

 

A 75-minute Mid Term and a 100-minute comprehensive final examination will be given. The Mid Term is tentatively scheduled on October 4th (week 7).  Student who has a hardship excuse for missing a test must notify the instructor on or before the day of the test to schedule a makeup.

 

            Grading:         

                                    Programming assignments:                     45%

Mid Term:                                            25%

Final examination:                                 30%

 

Grading Scale:

                                                            90 – 100                      A

80 – 89                        B

70 – 79                        C

60 – 69                        D

0 – 59                          E

           

 

 


Tentative Schedule

 

Week 1:           Linked List: Variations, Applications, etc. (Ch. 4)

                         

                        Week 2:           Stack ADT: Definition, Implementation, Application, etc. (Ch. 6)

 

Week 3:           Stack ADT cont. (Ch. 6)

Queue ADT: Definition, Implementation, Application, etc. (Ch. 7)

 

Week 4:           Queue ADT cont.

Problem Solving with Recursion: Application, recursive Grammars, Mathematical Induction, etc.  (Ch. 5)

                                               

Week 5:           Recursion cont. (Ch. 5)

 

Week 6:           Class Relationships: Inheritance, Virtual Functions, Class Templates, Overloaded Operators, etc. (Ch. 8)

                       

                        Week 7:           Review & Catch Up

                                                Mid Term (Chapters 4 – 7)

 

Week 8-10:      Algorithm and Sorting Efficiency: Algorithm Growth Rates, Big-O Notation, Efficiency of Searching Algorithms, Efficiency Comparison of Sorting Algorithms, etc. (Ch. 9)

 

                        Week 11-12:    Binary Tree ADT: Definition, Implementation, Search Tree, etc.

 

Week 13-14:    Table ADT: Definition, Implementations, Priority Queue, Heap, etc.

 

Week 15:         Graph ADT: Definition, Implementations, Application, etc.

 

December 12:   Final Examination (Everything)                      

                        10:00 – 11:40 AM