welcome to cmpsc 465 penn state university spring 2013
TRANSCRIPT
Welcome to Welcome to CMPSC 465CMPSC 465
Penn State UniversityPenn State UniversitySpring 2013Spring 2013
Today’s PlanToday’s Plan
IntroductionsIntroductions
Handouts: Syllabus, Student info sheet, Handouts: Syllabus, Student info sheet, autobiography, name tagsautobiography, name tags
Course OverviewCourse Overview
Syllabus HighlightsSyllabus Highlights http://www.personal.psu.edu/djh300/cmpsc465http://www.personal.psu.edu/djh300/cmpsc465
The Sorting Problem: Intro. to Insertion and Merge The Sorting Problem: Intro. to Insertion and Merge SortSort
Recitation Sections: Meet in 220 IST, Programming Recitation Sections: Meet in 220 IST, Programming lablab
The StaffThe Staff
Instructor: Doug HoganInstructor: Doug Hogan [email protected] 338C IST338C IST Office hours and out-of-class accessOffice hours and out-of-class access
Might tweak office hours at midtermMight tweak office hours at midterm
TAsTAs Yi YangYi Yang Cheng WangCheng Wang
Graders behind the scenesGraders behind the scenes
About the CourseAbout the Course
The Big QuestionsThe Big Questions
How do we solve problems?How do we solve problems? ……efficientlyefficiently
Some classic algorithmsSome classic algorithms
AnalysisAnalysis CorrectnessCorrectness Running TimeRunning Time
Data StructuresData Structures
Algorithmic Design StrategiesAlgorithmic Design Strategies
AnalysisAnalysis
How efficient is an algorithm?How efficient is an algorithm?
We’ll use tools from discrete math to measure We’ll use tools from discrete math to measure running timerunning time Usually, we count the number of comparisons or Usually, we count the number of comparisons or
elementary operations (+, -, *, /, etc.) elementary operations (+, -, *, /, etc.) Count in terms of the input size, Count in terms of the input size, nn, like the size , like the size
of an array being processof an array being process More concerned with how growth scales as More concerned with how growth scales as nn
gets largegets large
A theory course at heart, not a programming A theory course at heart, not a programming course at heartcourse at heart
Algorithmic Design Algorithmic Design StrategiesStrategies
IncrementalIncremental
Divide-and-conquerDivide-and-conquer
Greedy algorithmsGreedy algorithms
Dynamic programmingDynamic programming
Some Big ProblemsSome Big Problems
SearchingSearching
SortingSorting
Storing data for fast accessStoring data for fast access Example: Trees, esp. balanced treesExample: Trees, esp. balanced trees
Traversing data structuresTraversing data structures
Course OrganizationCourse Organization
UNIT 1: UNIT 1: Intro to Analysis ToolsIntro to Analysis Tools Divide and ConquerDivide and Conquer RecurrencesRecurrences
UNIT 2:UNIT 2: HeapsHeaps SortingSorting
UNIT 3:UNIT 3: HashingHashing TreesTrees
UNIT 4:UNIT 4: GraphsGraphs Graph algorithmsGraph algorithms
UNIT 5:UNIT 5: Greedy algorithmsGreedy algorithms Dynamic programmingDynamic programming ComputatbilityComputatbility
Course Organization and Course Organization and Syllabus HighlightsSyllabus Highlights
LecturesLectures
Lecture 1Lecture 1 MWF, 10:10 a.m. to 11 a.m., 114 EESMWF, 10:10 a.m. to 11 a.m., 114 EES Larger room: seats 116Larger room: seats 116
Lecture 2Lecture 2 MWF, 11:15 a.m. to 12:05 p.m., 101 LeonhardMWF, 11:15 a.m. to 12:05 p.m., 101 Leonhard Smaller room: seats 36Smaller room: seats 36
Students scheduled for 10:10 should come to Students scheduled for 10:10 should come to the 10:10 class, but may switch in emergency the 10:10 class, but may switch in emergency situations onlysituations only
Assignments due in lecture are due at your Assignments due in lecture are due at your assigned lecture’s startassigned lecture’s start
RecitationsRecitations
Four different recitations on Mondays, all in Four different recitations on Mondays, all in EESEES1.1. 12:20, Room 12112:20, Room 1212.2. 1:25, Room 1211:25, Room 1213.3. 4:40, Room 1214:40, Room 1214.4. 6:30, Room 1196:30, Room 119
Today and next Monday: 220 IST insteadToday and next Monday: 220 IST instead
Come to your scheduled time…Come to your scheduled time… ……unless in emergency situationsunless in emergency situations ……or you trade with someone to keep class sizes or you trade with someone to keep class sizes
balancedbalanced Attention prioritized for those assigned to a timeAttention prioritized for those assigned to a time
What You Must Bring What You Must Bring InIn
Programming knowledge and experience Programming knowledge and experience (121, 122)(121, 122) The basics The basics Functions/methods, most importantlyFunctions/methods, most importantly
RecursionRecursion Preconditions and postconditionsPreconditions and postconditions
Arrays and Linked ListsArrays and Linked Lists SearchingSearching SortingSorting
What You Must Bring What You Must Bring InIn
Discrete Math (360)Discrete Math (360) LogicLogic QuantifiersQuantifiers SetsSets Direct proof, esp. Direct proof, esp.
universal conditional universal conditional statementsstatements
SequencesSequences INDUCTIONINDUCTION
Strong inductionStrong induction RecurrencesRecurrences Functions – injections, Functions – injections,
etc.etc.
More Discrete MathMore Discrete Math Basics of treesBasics of trees
BSTBST The language of graphsThe language of graphs Some countingSome counting
Combinations, Combinations, permutations, esp. permutations, esp.
If you need to review If you need to review or fill in holesor fill in holes 360 lectures on ANGEL360 lectures on ANGEL Epp Ch. 1-10Epp Ch. 1-10 Ask meAsk me
BooksBooks
Main book: Cormen, Main book: Cormen, Introduction to AlgorithmsIntroduction to Algorithms (“CLRS”), 3(“CLRS”), 3rdrd ed. ed. Ch. 1-4, 6-8, 11-13, 18, 22-24, 15-16, ?Ch. 1-4, 6-8, 11-13, 18, 22-24, 15-16, ?
Epp, Epp, Discrete Mathematics with ApplicationsDiscrete Mathematics with Applications, 4, 4thth ed. ed. We’ll do Chapter 11 – you must have a copy of that We’ll do Chapter 11 – you must have a copy of that
(electronic purchase available)(electronic purchase available) Reference and clearer explanations than CLRS on the Reference and clearer explanations than CLRS on the
fundamentalsfundamentals
Another View: Kleinberg/Tardos, Another View: Kleinberg/Tardos, Algorithm Design Algorithm Design (“KT”)(“KT”) I’ll hand out some sections or use some slides I’ll hand out some sections or use some slides
sometimessometimes
LecturesLectures
FormatFormat By popular demand, I’ll aim to provide notes By popular demand, I’ll aim to provide notes
packets for Units 1-4’s core contentpackets for Units 1-4’s core content Have some notebook paper handy, thoughHave some notebook paper handy, though Unit 5 – not sure yet. Might use some KT materials.Unit 5 – not sure yet. Might use some KT materials. Periodically, some on-screen presentationsPeriodically, some on-screen presentations
ConductConduct Be here on time, don’t move around, be respectful.Be here on time, don’t move around, be respectful. No phones, laptops, whatever. You, me, your brain, No phones, laptops, whatever. You, me, your brain,
pencil, paper, deep thinkingpencil, paper, deep thinking
Alertness PointsAlertness Points
The conceptThe concept
Applies to lectureApplies to lecture
Since there are 2 lectures, 7 alertness Since there are 2 lectures, 7 alertness points yield 1 exam bonus pointpoints yield 1 exam bonus point
AssignmentsAssignments
Practice and Learning Practice and Learning ToolsTools Two kindsTwo kinds
Standard Homework Standard Homework Problems, most Problems, most lectureslectures
Challenge Homework Challenge Homework Problems, a set per Problems, a set per unitunit
Start on your own, write Start on your own, write up your own solutionup your own solution
Discuss with study Discuss with study groupsgroups
More Formal More Formal AssignmentsAssignments Two kindsTwo kinds
Formal Problem Formal Problem Write-UpsWrite-Ups
Programming Programming AssignmentsAssignments
InfrequentlyInfrequently Absolutely to be done Absolutely to be done
alone (or in a team if alone (or in a team if specs say)specs say)
More on AssignmentsMore on Assignments
Read the syllabus for all policiesRead the syllabus for all policies
Standard homework problems could be Standard homework problems could be collected any lecture after the one when collected any lecture after the one when they come up in the notes packets or are they come up in the notes packets or are announcedannounced Up to the next examUp to the next exam Built-in forgiveness in grading: 5-10%Built-in forgiveness in grading: 5-10%
Challenge problems and examsChallenge problems and exams Discussion very much encouragedDiscussion very much encouraged Comprehension Comprehension is keyis key
ExamsExams
Midterms:Midterms: All Thursday nights, 8:15 to 10:15 p.m., 101 ThomasAll Thursday nights, 8:15 to 10:15 p.m., 101 Thomas 20% of content directly linked to Challenge Problems20% of content directly linked to Challenge Problems More exams == less on an exam, way to facilitate More exams == less on an exam, way to facilitate
challenge problemschallenge problems Dates: 1/31, 2/21, 3/21, 4/11Dates: 1/31, 2/21, 3/21, 4/11 Conflict exam form on web site, due 10 days in Conflict exam form on web site, due 10 days in
advanceadvance
FinalFinal
All collectively worth 75%All collectively worth 75%
Some review/correction content on exams instead Some review/correction content on exams instead of EC quizzesof EC quizzes
Other Syllabus ThingsOther Syllabus Things
Grades: 75% exams, 25% homeworkGrades: 75% exams, 25% homework
Don’t try to interpret an overall average Don’t try to interpret an overall average before spring breakbefore spring break In normal cases, 70% gets you a “C” and 90% In normal cases, 70% gets you a “C” and 90%
gets you an “A”gets you an “A” Precise scale determined laterPrecise scale determined later
Read the rest for the other policiesRead the rest for the other policies Academic integrityAcademic integrity Re-grade requestsRe-grade requests
Closing Opening WordsClosing Opening Words
[It makes sense… [It makes sense… ]]
Please bear with me as I set this course up Please bear with me as I set this course up for the first time.for the first time.
Take your work seriously and be Take your work seriously and be professional in your written workprofessional in your written work
You will be challengedYou will be challenged
……but let’s make it fun!but let’s make it fun!
Onward…Onward…
Course Site:Course Site: http://www.personal.psu.edu/djh300/cmpsc46
5 ““Schedule” linkSchedule” link ““Resources” page Resources” page
Please contribute! Please contribute!
The Sorting ProblemThe Sorting Problem
Lab Setup for TodayLab Setup for Today