CS 251 Data Structures, Spring 2009

Voicu Popescu

 

 

General information

-        Instructors:

o   Voicu Popescu (lecture instructor)

§  Office: LWSN 3179

§  Email: popescu@cs.purdue.edu

§  URL: http://www.cs.purdue.edu/homes/popescu

§  Office hour: Mondays 1:30-2:30 and by appointment

o   Derek Drake (teaching assistant)

§  Office: LWSN B116E

§  Email: dmdrake@purdue.edu

§  Office hour: Tuesday, 12:00-1:00, LWSN B116E

o   Serkan Uzunbaz (teaching assistant)

§  Office: LWSN B116H

§  Email: suzunbaz@cs.purdue.edu

§  Office hour: Monday, 2:30-3:30

o   Nabeel Mohamed (teaching assistant)

§  Office: LWSN 2161

§  Email: nabeel@cs.purdue.edu

§  Office hour: Friday, 2.30-3.30

 

-        Communication

o   Course webpage: http://www.cs.purdue.edu/cgvlab/courses/251

o   Grades through Blackboard Vista: http://www.itap.purdue.edu/tlt/blackboard/index.cfm

o   cs251instructors@cs.purdue.edu will reach the instructor and TA’s, please use this email address to ask questions

o   CS251 newsgroup: purdue.class.cs251

§  Instructions for accessing newsgroup: http://help.itap.purdue.edu/search.php?s=newsgroups

o   Class emailing list: cs251-spring2009@cs.purdue.edu

§  All students should add themselves from Unix through the command « mailer add me to cs251-spring2009 »

§  NOTE : do not email to this list, use the newsgroup as a discussion forum; this list is reserved for making announcements

 

-        Room and schedule

o   12:30-1:20 MWF Lawson B155

o   See official university scheduling site

 

-        Text

o   “Data Structures and Algorithms in C++”, Michael T. Goodrich, Roberto Tamassia, and David Mount, John Wiley and Sons, ISBN 0-471-20208-8

o   All presentations and code shown in class will be made available through this web page (see table below)

 

-        Assignments

o   10 assignments

o   approximately due every week

o   credit value (out of the entire course credit): 5% each assignment, 50% total

o   turn-in instructions

 

-        Exams

o   Two midterms, 15% each, 30% total

o   One final, 20%

 

-        Re-grading

o   You have one week to ask for a re-grade after the assignment or exam has been handed back to you

o   You may request a regrade by seeing the TA that graded the assignment if you believe that your program or homework was graded incorrectly. You must submit in writing what you believe is incorrectly graded. We will then regrade the entire homework/project. There will be no regrades for code changes with the exception (and with an appropriate penalty) of changes to the program that do not affect the LOGIC of the program. So an acceptable code regrade would be to add a missing "#include". An unacceptable code regrade would be to add in "if(ptr!=NULL)"

 

-        Cheating

o   Do not cheat!

o   Frequent and thorough scans for cheating

o   If caught automatic failing grade for the class and reported to the Dean of Students' Office

o   Examples of cheating (courtesy of Gene Spafford)

§  Using part or all of someone else's work, from this or any prior semester, in projects or homework without the instructor's prior approval;

§  Misrepresenting the functionality of code. That is, if a student submits a project with falsified output or test data to make it look as if a program works better than it does;

§  Using hidden notes or hints to answer questions during a test that does not allow open notes or crib sheets;

§  Submitting answers on homework or projects that were developed or researched by any other individual and presented as the student's own work;

§  Copying text from a book or paper to include in the student's own writing without clearly marking it as a quote and citing the source (This is plagiarism and may be a violation of copyright law as well as cheating.);

§  Setting permissions on files and directories in a student's account so that someone can easily copy programs and documents, or allowing any other person, in the class or otherwise, to use your computer account (note that this is also a violation of department policy or PUCC policy;

§  Providing program code or problem solutions to another student in the class without the instructor's explicit, prior approval;

§  Encouraging anyone to do any of the above, or failing to report anyone involved in any of these activities.

o   Purdue University Department of Computer Science Academic Integrity Policy: http://www.cs.purdue.edu/resources/policies/academic/integrity.shtml

 

Syllabus, schedule, and class materials

 

Date

Lectures, assignments, and announcements

M Jan 12

 Week’s topics:

-        Class organization

-        Basic C++ by example

Announcement:

-        no PSO’s and no office hours in the first week of classes

W Jan 14

Code: ZipArchive (use A1.zip for Assignment 1)

F Jan 16

Code (cumulative, includes W’s code): ZipArchive (use A1.zip for Assignment 1)

Assignment 1: download from here

M Jan 19

No class—Dr. Martin Luther King Jr. Day

W Jan 21

Topic: Analysis Tools

Reading: Chapter 3

Slides: PDF

F Jan 23

Assignment 2: download from here

M Jan 26

Topic: Stacks, Queues

Reading: Chapter 4

Slides: PDF

W Jan 28

CLASS CANCELLED

F Jan 30

Assignment 3: download from here

M Feb 2

Topic: Vectors, Lists, and Sequences

Reading: Chapter 5

Slides: PDF

W Feb 4

 

F Feb 6

Assignment 4: download from here

M Feb 9

Topic: Trees

Reading: Chapter 6

Code: ZipArchive

Slides: PDF

W Feb 11

 

F Feb 13

Assignment 5: download from here

M Feb 16

Topic: Priority Queues (and Heaps)

Reading: Chapter 7

Slides: PDF

W Feb 18

F Feb 20

M Feb 23

Review for Midterm 1

W Feb 25

Evening Examination: Midterm 1, 8:00PM-10:00PM, KRAN G016 answers

Assignment 6: download from here

F Feb 27

M Mar 2

Topic: Dictionaries, Hash Tables

Reading: Chapter 8

Code: ZipArchive

Slides: PDF

W Mar 4

F Mar 6

Assignment 7: download from here

M Mar 9

Topic: AVL Trees

Reading: Chapter 9

Slides: PDF

W Mar 11

 

F Mar 13

Assignment 8: download from here

M Mar 16

No class—Spring Vacation

W Mar 18

No class—Spring Vacation

F Mar 20

No class—Spring Vacation

M Mar 23

Topic: Sorting, Sets, and Selection

Reading: Chapter 10

Slides: PDF

W Mar 25

F Mar 27

Review for Midterm 2

M Mar 30

Evening Examination: Midterm 2, 8:00PM-10:00PM, KRAN G016

W Apr 1

F Apr 3

Topic: Text Processing

Reading: Chapter 11

Slides: PDF

M Apr 6

Assignment 9: download from here

W Apr 8

F Apr 10

Assignment 10: download from here

M Apr 13

Topic: Graphs

Reading: Chapter 12

Slides: PDF

W Apr 15

F Apr 17

M Apr 20

W Apr 22

F Apr 24

 

M Apr 27

 

W Apr 29

F May 1

Review for Final Examination

Saturday May 9

Final Examination, 3:20p – 5:20p, ARMS B061

 

Voicu Popescu, spring 2009