CS503: Tenth Lecture, Fall 2008 Review Michael Barnathan.

Slides:



Advertisements
Similar presentations
Student Projects in the Course Data Structures
Advertisements

1 CS101 Introduction to Computing Lecture 17 Algorithms II.
Intro to CIT 594
CS 240: Data Structures Tuesday, July 24 th Searching, Hashing Graphs.
Data Structures Data Structures Topic #13. Today’s Agenda Sorting Algorithms: Recursive –mergesort –quicksort As we learn about each sorting algorithm,
Review. What to know You are responsible for all material covered in lecture, the readings, or the programming assignments There will also be some questions.
CS 307 Fundamentals of Computer Science 1 Abstract Data Types many slides taken from Mike Scott, UT Austin.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2009 Lecture 1 Introduction/Overview Text: Chapters 1, 2 Th. 9/3/2009.
June 13, Introduction to CS II Data Structures Hongwei Xi Comp. Sci. Dept. Boston University.
CS 206 Introduction to Computer Science II 11 / 04 / 2009 Instructor: Michael Eckmann.
Review for Test 2 i206 Fall 2010 John Chuang. 2 Topics  Operating System and Memory Hierarchy  Algorithm analysis and Big-O Notation  Data structures.
1 Foundations of Software Design Lecture 1: Course Overview Intro to Binary and Boolean Marti Hearst SIMS, University of California at Berkeley.
CS 206 Introduction to Computer Science II 04 / 29 / 2009 Instructor: Michael Eckmann.
Designing for Performance Announcement: The 3-rd class test is coming up soon. Open book. It will cover the chapter on Design Theory of Relational Databases.
CS 206 Introduction to Computer Science II 12 / 10 / 2008 Instructor: Michael Eckmann.
DAST, Spring © L. Joskowicz 1 Data Structures – LECTURE 1 Introduction Motivation: algorithms and abstract data types Easy problems, hard problems.
July 16, Introduction to CS II Data Structures Hongwei Xi Comp. Sci. Dept. Boston University.
Data Structures Lecture-1:Introduction
Data Structures & Agorithms Lecture-1: Introduction.
Computer Science 102 Data Structures and Algorithms V Fall 2009 Lecture 1: administrative details Professor: Evan Korth New York University 1.
Instructor: Dr. Sahar Shabanah Fall Lectures ST, 9:30 pm-11:00 pm Text book: M. T. Goodrich and R. Tamassia, “Data Structures and Algorithms in.
Teaching Teaching Discrete Mathematics and Algorithms & Data Structures Online G.MirkowskaPJIIT.
Copyright © Wondershare Software Introduction to Data Structures Prepared by: Eng. Ahmed & Mohamed Taha.
CS223 Algorithms D-Term 2013 Instructor: Mohamed Eltabakh WPI, CS Introduction Slide 1.
Data Structures and Programming.  Today:  Administrivia  Introduction to 225, Stacks  Course website: 
Data Structures Lecture 1: Introduction Azhar Maqsood NUST Institute of Information Technology (NIIT)
Chapter 3 List Stacks and Queues. Data Structures Data structure is a representation of data and the operations allowed on that data. Data structure is.
CRACKING THE CODING INTERVIEW Nitish Upreti. Nitish
Week 6 - Wednesday.  What did we talk about last time?  Exam 1 post-mortem  Recursive running time.
Instructor Information: Dr. Radwa El Shawi Room: Week # 1: Overview & Review.
CSC – 332 Data Structures Dr. Curry Guinn. Quick Info Dr. Curry Guinn –CIS 2045 – –
Week 6 - Friday.  What did we talk about last time?  Recursive running time  Fast exponentiation  Merge sort  Introduced the Master theorem.
DATA STRUCTURES (CS212D) Week # 1: Overview & Review.
CS212: DATA STRUCTURES Lecture 1: Introduction. What is this course is about ?  Data structures : conceptual and concrete ways to organize data for efficient.
Data Structures (Second Part) Lecture 1 Bong-Soo Sohn Assistant Professor School of Computer Science and Engineering Chung-Ang University.
Computer Science 102 Data Structures and Algorithms CSCI-UA.0102 Fall 2012 Lecture 1: administrative details Professor: Evan Korth New York University.
CS 206 Introduction to Computer Science II 09 / 10 / 2009 Instructor: Michael Eckmann.
CMSC 2021 CMSC 202 Computer Science II for Majors Fall 2002 Mr. Frey (0101 – 0104) Mr. Raouf (0201 – 0204)
Data Structures and Algorithms – using JAVA Boro Jakimovski University of Sts Cyril and Methodius, Skopje.
1 CSC 321: Data Structures Fall 2013 See online syllabus (also available through BlueLine2): Course goals:  To understand.
CSC 212 – Data Structures Lecture 37: Course Review.
Data Structures for Programmers Vamshi Ambati
ICS202 Data Structures King Fahd University of Petroleum & Minerals College of Computer Science & Engineering Information & Computer Science Department.
Intro to CIT 594
CSE373: Data Structures & Algorithms Lecture 6: Priority Queues Kevin Quinn Fall 2015.
CMSC 2021 CMSC 202 Computer Science II for Majors Spring 2002 Sections Ms. Susan Mitchell.
BIT 143: Programming – Data Structures It is assumed that you will also be present for the slideshow for the first day of class. Between that slideshow.
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.
Course Introductions.  Introduction to java  Basics of Java  Classes & Objects  Java Collections and APIs  Algorithms and their analysis  Recursion.
DATA STRUCTURES (CS212D) Overview & Review Instructor Information 2  Instructor Information:  Dr. Radwa El Shawi  Room: 
CSE332: Data Abstractions Lecture 28: Course Wrap-up Tyler Robison Summer
Team assignments in CS 322 “Data Structures & Algorithms II” Jey Veerasamy CIS Adjunct Faculty Baker College Online.
COMP9024: Data Structures and Algorithms
CSC 321: Data Structures Fall 2016
Week 7 - Friday CS221.
CSC 321: Data Structures Fall 2017
Exam Hints.
Cse 373 May 15th – Iterators.
Computer Science 102 Data Structures CSCI-UA
ECET 370 HELPS Education Your Life-- ecet370helps.com.
CS302 Data Structures Fall 2012.
structures and their relationships." - Linus Torvalds
original list {67, 33,49, 21, 25, 94} pass { } {67 94}
Introduction to CS II Data Structures
Week # 1: Overview & Review
Algorithm Design and Analysis
CSC 321: Data Structures Fall 2018
structures and their relationships." - Linus Torvalds
Presentation transcript:

CS503: Tenth Lecture, Fall 2008 Review Michael Barnathan

Grading Last chance for feedback. If none, here is the system we will use: 40% Assignments. 40% Project. 10% Labs. 10% Participation.

The Assignment Last week’s lab, creating a dictionary, has been turned into Assignment 3. It is due next week, Tuesday 10/14. – Like the other assignments, you should not require that much time, however. – I always implement the assignments before giving them to you. This one took me about an hour. – Don’t worry so much about the speed; focus on gaining skill and the speed will come with it. – 90% of the work in development isn’t figuring out how to tell the computer what to do; it’s how to frame the problem in terms the computer can understand. In other words, it’s a mental game. – The other 10% mostly involves looking up existing solutions, like TreeMap. – Another key to fast development: being completely comfortable with your development environment. Reminder: We do not have class on Thursday. – If you would like to go over it now, we can do that.

Mid-Semester Checkpoint We’ve covered a lot of structures so far: – Unsorted Arrays. – Sorted Arrays. – Linked Lists. – Stacks. – Queues. – Deques. – Priority Queues. – Binary Trees. – Binary Search Trees. And we’re not even halfway through the semester! Nice work! – You’re actually moving at about the pace of the original syllabus I had made for this course. – I was told that such a pace would be impossible, yet here we are, and unintentionally to boot. The most practical skill in the field of data structures is not implementing these (others have done it for you), but choosing which structure to use in which situation. – Making wise choices separates good from great. – When the input is small, the choice may be transparent to the user. – But the choices you make will determine how well your apps scale. We still have a few more to learn about that may sometimes be the best choice.

What’s left? Data Structures – Self-balancing Trees. Built on trees and balancing algorithms. – Heaps. Relate to trees and priority queues. – Hash Tables. Uses concepts from linear-time search. You will use these a lot. – Graphs. The most general data structure. Analysis – Amortized. – Average-case (maybe). – Solution of recurrences not covered by the Master Method. Theory – Some more recursion. Java – The complete set of collection classes. – Checked and unchecked exceptions. We’ll probably finish this all in about a month. These constitute the standard topics taught in a data structures and algorithms course. After we finish, I’m going to let you decide where you want to take your education. We can talk about some advanced techniques, go into more Java, review the current material, work on the project…

Some Philosophy: Your Goals and the Proper Role of Education I asked what your goals were in the beginning of the semester. Keep them in mind. Education is powerful… but it’s just a tool for reaching those goals. So once we finish the standard topics, think about where you want to take your education. – What topics would best serve what you want to do with it? – If your goals are unclear, these sorts of choices also force you to define them better. Don’t just think about your career goals, either. – We all have things we want to accomplish with our lives; definitions of success or failure that we evaluate them by. – These should be the primary goals, and all others only means towards achieving them.

On to the review… I’ll start by asking you some questions about the material we have covered and we’ll go from there.