{[ promptMessage ]}

Bookmark it

{[ promptMessage ]}

intro - CS 251 Spring 2012 Data Structures and Algorithms...

Info iconThis preview shows pages 1–11. Sign up to view the full content.

View Full Document Right Arrow Icon
Data Structures and Algorithms CS 251, Spring 2012 Professor Sonia Fahmy (Lecture 1) Professor Xavier Tricoche (Lecture 2)
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Algorithms, 4 Edition · Robert Sedgewick and Kevin Wayne · Copyright © 2002–2010 · January 2, 2012 1:37:25 PM Overview Course overview Introductory example: Union find
Background image of page 2
Course information Instructors: Professor Sonia Fahmy: Section 1 TTh 1:30-2:45 Professor Xavier Tricoche: Section 2 TTh 10:30-11:45 Office hours: See web page Teaching Assistants: Rahul Nanda Ruby Tahboub Zhengyi Zhang Website: www.cs.purdue.edu/homes/cs251 3
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Course goals Program = Algorithm + Data Structures Algorithm: method for solving a problem. Data structure: method to store information. CS251 : programming and problem solving, with applications. In this course you will learn how the representation of data in the computer has an impact on the performance of a program We will cover several different types of data structures and algorithms that utilize these data structures You will also improve your programming skills 4
Background image of page 4
Course content Simple proof techniques Program analysis Bags, stacks, and queues Trees Heaps and priority queues Sorting algorithms Search trees Hash tables Text processing Graphs 5
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Course information Textbook: Algorithms, Sedgewick and Wayne, 4th edition Other course information: Syllabus, schedule of topics and slides available on course webpage Read chapter/section before class Print slides and bring to class Take notes in class 6
Background image of page 6
Prerequisites The class assumes that you have either (i) good Java background, or (ii) basic Java + OO programming background Data types Control statements Arrays, simple classes Inheritance and polymorphism Exceptions Interfaces and abstract classes Basic background in C++ is also assumed The algorithms will be presented in pseudocode or Java However, programming projects can be completed in either Java or C++ One project will require use of C++ 7
Background image of page 7

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Programming Follow good programming style. See: http://www.jbonneau.com/style_guide.pdf http://192.220.96.201/essays/java-style/ Resources: Java API: http://download.oracle.com/javase/1.5.0/docs/api/index.html http://www.cs.princeton.edu/introcs/home/ (for Java basics) 8
Background image of page 8
Course resources Schedule: See course web page: - No PSO on Jan 16 (MLK day) - No lectures on Mar 12-16 (Spring break) - Midterm exam: TBD, evening - Final exam: TBD Links to slides, assignments, and additional readings are on the schedule - Material is password protected, username: cs251-spring, password: XXX - Links will be activated as material is posted - Do not distribute material 9
Background image of page 9

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
10 Assignments: 45% 2 written homeworks 6 programming projects Due at 11:59pm via electronic submission Quizzes: 5% Exams: 20% + 30% Closed-book, closed notes.
Background image of page 10
Image of page 11
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}