© 2004 Goodrich, Tamassia CS2210 Data Structures and Algorithms Lecture 1: Course Overview Instructor: Olga Veksler.

Slides:



Advertisements
Similar presentations
Data Structures and Algorithms Dr. Robin Gras Ext Lambton Tower 8111.
Advertisements

COMP171 Data Structures and Algorithms Spring 2009.
1-1 CMPT 225 Data Structures and Programming Instructor: Aaron Hunter Section: E300 Campus: Harbour Centre Semester: Spring 2007.
CS 46101–600/CS Design and Analysis of Algorithms Dr. Angela Guercio Spring 2010.
COMP171 Data Structures and Algorithms Spring 2009.
1 CENG 707 Data Structures and Algorithms Nihan Kesim Çiçekli Department of Computer Engineering Middle East Technical University Fall 2010.
CS/CMPE 535 – Machine Learning Outline. CS Machine Learning (Wi ) - Asim LUMS2 Description A course on the fundamentals of machine.
CSc 160 Overview of Fundamentals of Computer Programming II Spring (SO1) 2004.
COMP171 Data Structures and Algorithm Huamin Qu Lecture 1 (Sept. 1, 2005)
COMP171 Data Structures and Algorithm Qiang Yang Lecture 1 ( Fall 2006)
EE 220 (Data Structures and Analysis of Algorithms) Instructor: Saswati Sarkar T.A. Prasanna Chaporkar, Programming.
COMP152 Object-Oriented Programming and Data Structures Spring 2011.
COMP 110 Introduction to Programming Mr. Joshua Stough August 22, 2007 Monday/Wednesday/Friday 3:00-4:15 Gardner Hall 307.
CENG 213 Data Structures Department of Computer Engineering Middle East Technical University Fall 2014 CENG 213 Data Structures 1.
IS 320: Data Structures Spring Quarter DESCRIPTION This class is an introduction to data structures. The primary data structures—list, stack, queue,
CSCE 3110 Data Structures and Algorithm Analysis.
COP4020/CGS5426 Programming languages Syllabus. Instructor Xin Yuan Office: 168 LOV Office hours: T, H 10:00am – 11:30am Class website:
METU Computer Engineering Department
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.
Data Structures and Programming.  Today:  Administrivia  Introduction to 225, Stacks  Course website: 
Syllabus and Class Policies MATH 130: Summer 2014.
CPS120: Introduction to Computer Science Fall: 2002 Instructor: Paul J. Millis.
CSC 212 – Data Structures Prof. Matthew Hertz WTC 207D /
Object Oriented Programming (OOP) Design Lecture 1 : Course Overview Bong-Soo Sohn Associate Professor School of Computer Science and Engineering Chung-Ang.
COMPE 226 Data Structures 2015 Fall Murat KARAKAYA Department of Computer Engineering.
Syllabus. Instructor Dr. Hanan Lutfiyya Middlesex College 418 Ext Office Hours: Tuesday from 12:05-1:05 and Thursday from 11:05-1:05.
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.
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.
Data Structures (Second Part) Lecture 1 Bong-Soo Sohn Assistant Professor School of Computer Science and Engineering Chung-Ang University.
Introduction to Data Structures
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)
COMP2012 Object-Oriented Programming and Data Structures Fall 2015.
Nirmalya Roy School of Electrical Engineering and Computer Science Washington State University Cpt S 223 – Advanced Data Structures Course Introduction.
CSE 3358 NOTE SET 1 Data Structures and Algorithms.
Welcome to COMP 250 Introduction to Computer Science! Mathieu Blanchette.
Object Oriented Programming (OOP) Design Lecture 1 : Course Overview Bong-Soo Sohn Associate Professor School of Computer Science and Engineering Chung-Ang.
CPS120: Introduction to Computer Science Winter 2002 Instructor: Paul J. Millis.
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.
Syllabus. Instructor Dr. Hanan Lutfiyya Middlesex College 418 Ext Office Hours: Wednesday 5-6; Thursdays 4-6 or by appointment.
Nirmalya Roy School of Electrical Engineering and Computer Science Washington State University Cpt S 223 – Advanced Data Structures Course Introduction.
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)
Course Preliminaries Course Objectives Course Objectives Students’ Learning Outcomes Students’ Learning Outcomes Grading Policy Grading Policy Course Resources.
1 WELCOME TO COMPUTER SCIENCE 1027b COMPUTER SCIENCE FUNDAMENTALS II Lecturers: John Barron (001) James Hughes(002)
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.
PROBLEM SOLVING AND PROGRAMMING ISMAIL ABUMUHFOUZ | CS 170.
1 CENG 707 Data Structures and Algorithms Nihan Kesim Çiçekli Department of Computer Engineering Middle East Technical University Fall 2013.
CENG 213 Data Structures1 Nihan Kesim Çiçekli Department of Computer Engineering Middle East Technical University.
Computer Science I ISMAIL ABUMUHFOUZ | CS 180. CS 180 Description BRIEF SUMMARY: This course covers a study of the algorithmic approach and the object.
Syllabus and Class Policies MATH 130: Summer 2016.
CENG 213 Data Structures Nihan Kesim Çiçekli
CENG 707 Data Structures and Algorithms
COMP9024: Data Structures and Algorithms
CSc 020: Programming Concepts and Methodology II
CENG 213 Data Structures Nihan Kesim Çiçekli
CENG 213 Data Structures Dr. Cevat Şener
Computer Science 102 Data Structures CSCI-UA
September 27 – Course introductions; Adts; Stacks and Queues
CS 201 – Data Structures and Discrete Mathematics I
CS 201 – Data Structures and Discrete Mathematics I
First Semester 1439/1440 Welcome 
CSCE 221 Professor Lupoli TAMU CSCE 221 Intro.
Presentation transcript:

© 2004 Goodrich, Tamassia CS2210 Data Structures and Algorithms Lecture 1: Course Overview Instructor: Olga Veksler

Analysis of Algorithms2 What is this course about? We will study moderately complex data structures and algorithms that are essential in core areas of computer science Compilers Operating Systems Database Systems Search Engines etc. This is one of the most important (and fun) courses you will take Prerequisite for almost all other upper year courses

Analysis of Algorithms3 Simple data structures you have seen Data structure = representation and operations associated with a data type Set/bag Array Tree

Analysis of Algorithms4 Simple algorithms you have seen Binary search Bubble sort Quick sort

Analysis of Algorithms5 Knowledge Assumed We assume you know basic data structures Arrays, bags, lists, stacks, queues, linked lists Functions, logarithms, exponents, sets, series, derivatives, limits Abstract Data types Basic object oriented design concepts abstraction, encapsulation, modularity

Analysis of Algorithms6 Skills Assumed We assume you know how to program in Java can design, implement, test, debug, read, understand and document relatively simple Java programs including simple recursive code This is not a course on Java. If you don’t know Java, start learning it now, before the programming assignments are due! Books, tutorials on the web, etc. Chapter 1 of our text book (Goodrich&Tamassia) gives a good introduction to Java

Analysis of Algorithms7 What will you learn? Analysis of moderately complex algorithms How to predict algorithm’s performance time and space complexity Algorithm correctness Moderately complex data structures that let us efficiently store, access, manage data How to solve practical problems efficiently by choosing the appropriate data structures and algorithms

Analysis of Algorithms8 Topics Covered Analysis of algorithms Time and space complexity Correctness Data Structures Dictionaries, hash tables Priority queues and heaps Trees, binary search trees, multi-way search trees Graphs Algorithms Binary Search, sorting, algorithms on trees and graphs Java Interfaces; Java exceptions

Analysis of Algorithms9 Contact Info Instructor Information Olga Veksler Lectures: Tu 1:30-3:30, Th 2:30-3:30 Office hours: Wed Lecture Notes Available on the course web page

Analysis of Algorithms10 Contact Info Course Web Page You are responsible for checking the course web page frequently I will post any important announcements on the web page (about homework, exams, etc.)

Analysis of Algorithms11 Discussion board I have set up a discussion board for the course (link from the course web page) Use it to ask any questions about the course You can post anonymously You should also feel free to reply to other student’s questions If you have a question about homework Post it on the discussion board Come talk to me or the TA Please do not me about homework, unless it is to set up a meeting outside the office hours

Analysis of Algorithms12 Course Prerequisites Computer Science 1027a/b or 1037a/b with grade of at least 60% One full-course equivalent from Calculus 1050a/b, 1051a/b, 1081a/b, Linear Algebra 1040a/b, Applied Mathematics 1026, Mathematics 030, the former Mathematics 1027, 1023a/b,1024a/b, the former Mathematics 1027 Knowledge of Java

Analysis of Algorithms13 Textbook Required: Data Structures and Algorithms in Java, fifth edition, Goodrich and Tamassia, John Wiley & Sons, 2010 Supplementary: Data Structures and Algorithms with Object Oriented Design Patterns in Java, Bruno R. Preiss, Wiley, 2000 The Java Programming Language, Arnold and Gosling, Addison-Wesley, Java, an Object Oriented Approach, Arnow and Weiss, Addison-Wesley, Other books listed on the course web site

Analysis of Algorithms14 Student Evaluation Assignments 36% 2 concept assignments, each worth 3% 3 programming assignments, each worth 10% Tentative Midterm Date 29%, 2 hours Tuesday, February 28, in class Final Exam 35%, 3 hours If an assignment has to be cancelled, the remaining assignment weights will be readjusted, if the midterm has to be cancelled, final exam will be worth 64%

Analysis of Algorithms15 Student Evaluation To be eligible to pass this course need 45% weighted average on the midterm and final exams and 45% weighted average on assignments To be eligible for an overall grade of 60% or higher, need 55% weighted average on the midterm and final exams and 55% weighted average on assignments

Analysis of Algorithms16 Tentative Assignments Schedule Assignment 1 (concept) due January 24 Assignment 2 (programming) due February 9 Assignment 3 (concept) due February 14 Assignment 4 (programming) due March 15 Assignment 5 (programming) due April 5

Analysis of Algorithms17 Tentative Assignments Schedule Paper copy of assignments are due in class on the due date or electronically on webct Programming assignments are to be submitted electronically on webct

Analysis of Algorithms18 Exam Policies There is no makeup for the Midterm, except for students requesting a special midterm exam for religious reasons. These students must have notified the course instructor and filed documentation with their Dean’s office at least 2 weeks prior to the Midterm Exam If you miss Midterm for any other valid reason, present documentation to the Dean’s office; your Final exam score will be re-weighted to include the weight of the Midterm

Analysis of Algorithms19 Class Attendance Not required, but strongly encouraged Lecture notes is only a summary of things happening in class, will not contain many examples Students who attend lectures tend to do better Attending lecture is most efficient way to learn the required material

Analysis of Algorithms20 Assignments Will be posted on the web site Concept Assignments Each concept assignment consists of a set of exercises. It must be typed or neatly written Programming assignments Due by 11:59 pm on the due date Java programs Must run on the departmental computing equipment Hand in using electronic submission procedures, to be described later

Analysis of Algorithms21 Late Policy Concept Assignments No late concept assignments accepted Programming assignments 1 day late: 5% 2 days late: 10% 3 days late: 15% 4 days late: 20% 5 days late: not accepted Saturday and Sunday count as one day

Analysis of Algorithms22 Late Policy Assignment extensions may be granted only by the course instructor If you have serious medical or compassionate grounds for an extension, take the supporting documentation to the Dean of your faculty

Analysis of Algorithms23 Assignment Marks Appeals Address appeals to the TA first. If you and the TA cannot agree, then TA will discuss the situation with the instructor Appeals must occur within 1 week from the first day that the marked assignments were made available to students. After 1 week, no appeals will be considered

Analysis of Algorithms24 Ethical Conduct All assignments are to be done individually Assignments judged to be the result of academic dishonesty will, First offence = -assignment weight Second offence = failing mark You are responsible for reading and respecting the Computer science Department’s policy on Scholastic Offences We have sophisticated software which will examine your code against everyone else in class