com s 228 introduction to data structures instructor: ying cai department of computer science iowa...

13
COM S 228 Introduction to Data Structures Instructor: Ying Cai Department of Computer Science Iowa State University [email protected] Office: Atanasoff 201 Office Hours: MW 3:00pm-4:00pm

Upload: dale-nichols

Post on 02-Jan-2016

276 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: COM S 228 Introduction to Data Structures Instructor: Ying Cai Department of Computer Science Iowa State University yingcai@iastate.edu Office: Atanasoff

COM S 228Introduction to Data Structures

Instructor: Ying Cai

Department of Computer ScienceIowa State [email protected]: Atanasoff 201

Office Hours: MW 3:00pm-4:00pm

Page 2: COM S 228 Introduction to Data Structures Instructor: Ying Cai Department of Computer Science Iowa State University yingcai@iastate.edu Office: Atanasoff

Course ResourcesCourse management tool: Blackboard Learn

All announcement (e.g., assignments, due dates, and exam location), clarifications and answers to common questions about homework will be made available there

All programming assignments must be submitted electronically via blackboard learn

So make sure you logon (https://bb.its.iastate.edu) and check frequently

My slides: www.cs.iastate.edu/~yingcai/cs228

TAs Shared with Dr. Jia and Dr. Fernández-Baca Please check the syllabus posted on blackboard for the

complete list and their office hours and location

Contact If you need to send an email to the instructor or the

TAs, please begin the subject line with “CS 228”

Page 3: COM S 228 Introduction to Data Structures Instructor: Ying Cai Department of Computer Science Iowa State University yingcai@iastate.edu Office: Atanasoff

Text book (optional)

We will mainly rely on lecture notes, which we may or may not post on line and/or on timeFor additional material you may look up books such as Simon Gray's Data Structures in Java, Addison-Wesley 2007 (textbook used for Com S 228 in Fall 2011 and Spring 2012).

Page 4: COM S 228 Introduction to Data Structures Instructor: Ying Cai Department of Computer Science Iowa State University yingcai@iastate.edu Office: Atanasoff

What this course is about

Object-Oriented ConceptsSome simple algorithms (e.g., sorting) and their run-time analysisAbstract data types List, stack, queue, tree, heap, map, graph,

etc.)

Implementation of ADT Generics in Java Collection Interface and Iterators

Page 5: COM S 228 Introduction to Data Structures Instructor: Ying Cai Department of Computer Science Iowa State University yingcai@iastate.edu Office: Atanasoff

Course ObjectivesAt the end of this course, you are expected to Write and debug well-structured object-oriented

programs of 2000 or more lines of Java code Implement a Java class given a specification, and

apply OO principles such as encapsulation and inheritance

Understand abstract data types (ADTs) and know common algorithms of manipulating these ADTs

Implement basic data structures in Java including expandable arrays, linked lists, trees, heaps, and hashtables

Understand some basic algorithms (e.g., sorting and searching) and perform runtime analysis

Page 6: COM S 228 Introduction to Data Structures Instructor: Ying Cai Department of Computer Science Iowa State University yingcai@iastate.edu Office: Atanasoff

Prerequisite: CS 227

The hardest part of this course is to have solid knowledge of what you learned in CS 227No student is allowed to take CS 228 without taking CS 227 first

Page 7: COM S 228 Introduction to Data Structures Instructor: Ying Cai Department of Computer Science Iowa State University yingcai@iastate.edu Office: Atanasoff

Grading (tentative)

Item Points

Exam 1 18

Exam 2 18

Exam 3 30

About 5 Homework

34

Total 100

Points Grade

>=88 A

[83, 88) A-

[78, 83) B+

[70, 78) B

[65, 70) B-

[60, 65) C+

[55, 60) C

[50, 55) C-

[45, 50) D+

[42, 45) D

[39, 42) D-

<39 F

This is to give you a rough idea, subject to change ...

Page 8: COM S 228 Introduction to Data Structures Instructor: Ying Cai Department of Computer Science Iowa State University yingcai@iastate.edu Office: Atanasoff

Homework

We expect to give 5 programming projects All will be posted on blackboard They will be more complex than those from CS 227 Due dates may overlap

Clarification thread The homework specification may include design

issues that require further clarification and it is your job to identify such issues and resolved them, in advance of the deadline

Clarification relevant to all students will be posted on Blackboard in the “official clarification”

Check BB frequently: All clarifications posted more than 24 hours before the assignment deadline are considered part of the homework specification

Page 9: COM S 228 Introduction to Data Structures Instructor: Ying Cai Department of Computer Science Iowa State University yingcai@iastate.edu Office: Atanasoff

Homework GradingCompilation and runtime errors

Use JDK 1.6 compiler Code must compile; zero otherwise You lose additional points for runtime errors

Documentation and style are important Count for 10 to 20 percent of each assignment Each class and method must have a complete and

correctly formatted javadoc comment Duplicated code should be removed Use nternal (//-style) comments appropriately (a

comment should precede the code it describes and indented to the same level)

Use a consistent indentation and formatting style (Eclipse: Ctrl-Shift-F)

Page 10: COM S 228 Introduction to Data Structures Instructor: Ying Cai Department of Computer Science Iowa State University yingcai@iastate.edu Office: Atanasoff

Submission and feedback

Late assignments In generally not accepted, except that programming

assignments may be turned in up to 24 hours late with a 25% grading penalty. (weekends and university holidays are counted in the 24 hours)

Results will be returned via Blackboard Learn If you feel an error has been made in grading your

assignment, you must make an appeal to the TA that graded it within one week of the date when the results were made available in Blackboard Learn

The appeal should be made during the TA's office hours, or by email if you cannot attend the TA's office hours

Correct submission of an assignment is your responsibility

Detailed instructions will be provided prior to the first due date.

Page 11: COM S 228 Introduction to Data Structures Instructor: Ying Cai Department of Computer Science Iowa State University yingcai@iastate.edu Office: Atanasoff

Other Policies

Academic Honesty Students who plagiarize other work in any

part of assignment/tests will receive F as the letter grade for this course, and will be reported to the university.

Disability If you have a documented disability and

anticipate needing accommodations in this course, please make arrangements to meet with me soon.

Page 12: COM S 228 Introduction to Data Structures Instructor: Ying Cai Department of Computer Science Iowa State University yingcai@iastate.edu Office: Atanasoff

How to do well in this class

Attend all classes and recitationsDo all homework in a timely mannerUse your resources: instructors, TAs, class notesYou have to write and run your own programsAsk questions

Page 13: COM S 228 Introduction to Data Structures Instructor: Ying Cai Department of Computer Science Iowa State University yingcai@iastate.edu Office: Atanasoff

Mutual Contract

Instructor I will provide information about

programming principles and practices to the best of my knowledge

I will uphold my professional ethics

Students I will participate in this course and practice

concepts learned through lectures, assignments, and exams to the best of my ability

I will uphold academic honesty, professional ethics and be a good class and world citizen