Introduction to Data Structures

Slides:



Advertisements
Similar presentations
Intro to CIT 594
Advertisements

CSc 2310 Principles of Programming (Java)
Today’s Agenda  Syllabus CS2336: Computer Science II.
CS 46101–600/CS Design and Analysis of Algorithms Dr. Angela Guercio Spring 2010.
Intro to CIT 594
CMSC 132: Object-Oriented Programming II
CMSC 132: Object-Oriented Programming II Nelson Padua-Perez William Pugh Department of Computer Science University of Maryland, College Park.
OBJECT ORIENTED PROGRAMMING I LECTURE 1 GEORGE KOUTSOGIANNAKIS
IS 320: Data Structures Spring Quarter DESCRIPTION This class is an introduction to data structures. The primary data structures—list, stack, queue,
July 16, Introduction to CS II Data Structures Hongwei Xi Comp. Sci. Dept. Boston University.
CSCE 3110 Data Structures and Algorithm Analysis.
Intro to CIT 594
COP4020/CGS5426 Programming languages Syllabus. Instructor Xin Yuan Office: 168 LOV Office hours: T, H 10:00am – 11:30am Class website:
Computer Science 102 Data Structures and Algorithms V Fall 2009 Lecture 1: administrative details Professor: Evan Korth New York University 1.
COMP 151: Computer Programming II Spring Course Topics Review of Java and basics of software engineering (3 classes. Chapters 1 and 2) Recursion.
WEEK 1 CS 361: ADVANCED DATA STRUCTURES AND ALGORITHMS Dong Si Dept. of Computer Science 1.
© 2004 Goodrich, Tamassia CS2210 Data Structures and Algorithms Lecture 1: Course Overview Instructor: Olga Veksler.
CSc 2310 Principles of Programming (Java) Dr. Xiaolin Hu.
CSC 212 – Data Structures Prof. Matthew Hertz WTC 207D /
Software Requirements Southern Methodist University CSE 5316/7316.
CST 229 Introduction to Grammars Dr. Sherry Yang Room 213 (503)
CS461: Principles and Internals of Database Systems Instructor: Ying Cai Department of Computer Science Iowa State University Office:
ECEN 301Discussion #1 – Syllabus1 All Sections MWF 1:00 – 1:50 PM 256 CB Lecture: MW Recitation: F Labs: M or Th Instructor: Prof. David Long Office: CB.
1 Object Oriented Design COP 3331 Spring 2011 MWF 11:50 AM – 12:40 PM CHE 103 Instructor:Dr. Rollins Turner Dept. of Computer Science and Engineering ENB.
CST 320 Compiler Methods Dr. Sherry Yang PV 171 (541)
1 Software Systems Development CEN Spring 2011 TR 12:30 PM – 1:45 PM ENB 116 Instructor:Dr. Rollins Turner Dept. of Computer Science and Engineering.
CSCI 51 Introduction to Computer Science Dr. Joshua Stough January 20, 2009.
Programming-1: Java for non-majors
CSE 3358 NOTE SET 1 Data Structures and Algorithms.
Computer Science 102 Data Structures and Algorithms CSCI-UA.0102 Fall 2012 Lecture 1: administrative details Professor: Evan Korth New York University.
1 WELCOME TO COMPUTER SCIENCE 1027b COMPUTER SCIENCE FUNDAMENTALS II Lecturers: Eric Schost (001) John Barron (002)
Course Information Sarah Diesburg Operating Systems COP 4610.
CMSC 2021 CMSC 202 Computer Science II for Majors Fall 2002 Mr. Frey (0101 – 0104) Mr. Raouf (0201 – 0204)
ICS102: Introduction To Computing King Fahd University of Petroleum & Minerals College of Computer Science & Engineering Information & Computer Science.
Course Information Andy Wang Operating Systems COP 4610 / CGS 5765.
Course Introduction Andy Wang COP 4530 / CGS 5425 Fall 2003, Section 4.
Overview Introductions Administrative Material – Syllabus & Outline What we’re going to cover in this class.
CSE 3358 NOTE SET 1 Data Structures and Algorithms.
Introduction to ECE 2401 Data Structure Fall 2005 Chapter 0 Chen, Chang-Sheng
ICS202 Data Structures King Fahd University of Petroleum & Minerals College of Computer Science & Engineering Information & Computer Science Department.
ACIS 3504 Accounting Systems and Controls. 2 Dr. Linda Wallace  Office: Pamplin 3092  
Intro to CIT 594
COP4610/CGS5765 Operating Systems Syllabus. Instructor Xin Yuan Office: 168 LOV Office hours: W M F 9:10am – 10:00am, or by appointments.
CMSC 2021 CMSC 202 Computer Science II for Majors Spring 2002 Sections Ms. Susan Mitchell.
CMSC 2021 CMSC 202 Computer Science II for Majors Spring 2001 Sections Ms. Susan Mitchell.
1 Data Structures COP 4530 Spring 2010 MW 4:35 PM – 5:50 PM CHE 101 Instructor:Dr. Rollins Turner Dept. of Computer Science and Engineering ENB
CMSC 2021 CMSC 202 Computer Science II for Majors Spring 2003 Mr. Frey (0101 – 0104) Mr. Raouf (0201 – 0204)
CS363: Introduction to Database Systems Instructor: Ying Cai Department of Computer Science Iowa State University Office: Atanasoff.
Course Info Instructor U.T. Nguyen Office: CSEB Office hours: Tuesday, 14:30-15:30 Thursday, 12:00-12:45 By.
Data Structures and Algorithms in Java AlaaEddin 2012.
COP4610 Principles of Operating Systems Prof. Robert van Engelen Department of Computer Science Florida State University.
Computer Networks CNT5106C
WELCOME TO MICRO ECONOMICS AB 224 Discussion of Syllabus and Expectations in the Class.
Networking CS 3470, Section 1 Sarah Diesburg
Andy Wang Object Oriented Programming in C++ COP 3330
Networking CS 3470, Section 1 Sarah Diesburg
Software Requirements
CSc 020: Programming Concepts and Methodology II
Course Information Mark Stanovich Principles of Operating Systems
Computer Science 102 Data Structures CSCI-UA
September 27 – Course introductions; Adts; Stacks and Queues
Andy Wang Operating Systems COP 4610 / CGS 5765
Andy Wang Object Oriented Programming in C++ COP 3330
Andy Wang Operating Systems COP 4610 / CGS 5765
Andy Wang Operating Systems COP 4610 / CGS 5765
Andy Wang Operating Systems COP 4610 / CGS 5765
Accelerated Introduction to Computer Science
Andy Wang Operating Systems COP 4610 / CGS 5765
Intro to CIT 594
Andy Wang Operating Systems COP 4610 / CGS 5765
Presentation transcript:

Introduction to Data Structures COM S 228 Introduction to Data Structures Instructor: Ying Cai Department of Computer Science Iowa State University yingcai@iastate.edu Office: Atanasoff 201 Office Hours: MW 3:00pm-4:00pm

Course Resources Course management tool: Blackboard Learn TAs Contact 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”

Text book (optional) We will mainly rely on lecture notes, which we may or may not post on line and/or on time For 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).

What this course is about Object-Oriented Concepts Some simple algorithms (e.g., sorting) and their run-time analysis Abstract data types List, stack, queue, tree, heap, map, graph, etc.) Implementation of ADT Generics in Java Collection Interface and Iterators

Course Objectives At 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

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

Grading (tentative) 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 Item Points Exam 1 18 Exam 2 Exam 3 30 About 5 Homework 34 Total 100 This is to give you a rough idea, subject to change ...

Homework We expect to give 5 programming projects Clarification thread 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

Homework Grading Compilation 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)

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.

Other Policies Academic Honesty Disability 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.

How to do well in this class Attend all classes and recitations Do all homework in a timely manner Use your resources: instructors, TAs, class notes You have to write and run your own programs Ask questions

Mutual Contract Instructor Students 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