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

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

View Full Document Right Arrow Icon

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

View Full DocumentRight Arrow Icon

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

View Full DocumentRight Arrow Icon

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

View Full DocumentRight Arrow Icon

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

View Full DocumentRight Arrow Icon

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

View Full DocumentRight Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: Data Structures and Algorithms CS 251, Spring 2012 Professor Sonia Fahmy (Lecture 1) Professor Xavier Tricoche (Lecture 2) Algorithms, 4 th Edition Robert Sedgewick and Kevin Wayne Copyright 20022010 January 2, 2012 1:37:25 PM Overview Course overview Introductory example: Union find 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 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 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 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 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 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 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 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....
View Full Document

Page1 / 58

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

This preview shows document pages 1 - 11. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online