CS223 Algorithms D-Term 2013 Instructor: Mohamed Eltabakh WPI, CS Introduction Slide 1.

Slides:



Advertisements
Similar presentations
Analysis & Design of Algorithms (CSCE 321)
Advertisements

CSE 589 Applied Algorithms Spring 1999 Course Introduction Depth First Search.
Jan Welcome to the Course of Advanced Algorithm Design (ACS-7101/3)
CS 46101–600/CS Design and Analysis of Algorithms Dr. Angela Guercio Spring 2010.
CS 253: Algorithms Syllabus Chapter 1 Appendix A.
CSCE 210 Data Structures and Algorithms
1 Course Information Parallel Computing Spring 2010.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2009 Lecture 1 Introduction/Overview Text: Chapters 1, 2 Th. 9/3/2009.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2001 Lecture 1 Introduction/Overview Wed. 9/5/01.
CS 206 Introduction to Computer Science II 04 / 29 / 2009 Instructor: Michael Eckmann.
CS 206 Introduction to Computer Science II 12 / 10 / 2008 Instructor: Michael Eckmann.
EE 220 (Data Structures and Analysis of Algorithms) Instructor: Saswati Sarkar T.A. Prasanna Chaporkar, Programming.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2005 Lecture 1 Introduction/Overview Text: Chapters 1, 2 Wed. 9/7/05.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Spring, 2001 Lecture 1 Introduction/Overview Wed. 1/31/01.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2000 Lecture 1 Introduction/Overview Wed. 9/6/00.
The Design and Analysis of Algorithms
TK3043 Analysis and Design of Algorithms Introduction to Algorithms.
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.
Nattee Niparnan Dept. of Computer Engineering, Chulalongkorn University.
WEEK 1 CS 361: ADVANCED DATA STRUCTURES AND ALGORITHMS Dong Si Dept. of Computer Science 1.
Introduction CSE 1310 – Introduction to Computers and Programming
Data Structures Lecture 1: Introduction Azhar Maqsood NUST Institute of Information Technology (NIIT)
Design and Analysis of Algorithms CSC201 Shahid Hussain 1.
CS 103 Discrete Structures Lecture 01 Introduction to the Course
Course Web Page Most information about the course (including the syllabus) will be posted on the course wiki:
Midterm Review CSE 2011 Winter October 2015.
Instructor Information: Dr. Radwa El Shawi Room: Week # 1: Overview & Review.
Lecture 1: Introduction and Overview CSCI 700 – Algorithms 1.
DATA STRUCTURES (CS212D) Week # 1: Overview & Review.
Computer Science 102 Data Structures and Algorithms CSCI-UA.0102 Fall 2012 Lecture 1: administrative details Professor: Evan Korth New York University.
Nirmalya Roy School of Electrical Engineering and Computer Science Washington State University Cpt S 223 – Advanced Data Structures Course Introduction.
December 4, Algorithms and Data Structures Lecture XV Simonas Šaltenis Aalborg University
CS4432: Database Systems II Course Logistics 1. Textbook 2 Required “Database Systems: The Complete Book”, Second Edition Hector Garcia-Molina, Jeffrey.
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.
Nirmalya Roy School of Electrical Engineering and Computer Science Washington State University Cpt S 223 – Advanced Data Structures Course Introduction.
1 BIM304: Algorithm Design Time: Friday 9-12am Location: B4 Instructor: Cuneyt Akinlar Grading –2 Midterms – 20% and 30% respectively –Final – 30% –Projects.
Elementary Data Organization. Outline  Data, Entity and Information  Primitive data types  Non primitive data Types  Data structure  Definition 
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.
CS321 Spring 2016 Lecture 3 Jan Admin A1 Due this Friday – 11:00PM Thursday = Recurrence Equations – Important. Everyone Should be added to class.
DATA STRUCTURES (CS212D) Overview & Review Instructor Information 2  Instructor Information:  Dr. Radwa El Shawi  Room: 
1 CS3431 – Database Systems I Logistics Instructor: Mohamed Eltabakh
Onlinedeeneislam.blogspot.com1 Design and Analysis of Algorithms Slide # 1 Download From
Data Structures By Dr. Mehedi Masud ِAssociate Professor, Computer Science Dept. College of Computers and Information Systems Taif University 1.
BITS Pilani Pilani Campus Data Structure and Algorithms Design Dr. Maheswari Karthikeyan Lecture1.
INTRODUCTION TO COMPUTER PROGRAMMING(IT-303) Basics.
CS3431-B111 CS3431 – Database Systems I Logistics Instructor: Mohamed Eltabakh
CS16: Introduction to Algorithms and Data Structures
CSCE 210 Data Structures and Algorithms
Welcome to the Course of Advanced Algorithm Design
Lecture 1 Introduction/Overview Text: Chapters 1, 2 Wed. 1/28/04
Jeremy Bolton, PhD Assistant Teaching Professor
CS5040: Data Structures and Algorithms
CPSC 311 Section 502 Analysis of Algorithm
Introduction of ECE665 Computer Algorithms
Computer Science 102 Data Structures CSCI-UA
September 27 – Course introductions; Adts; Stacks and Queues
CS 583 Fall 2006 Analysis of Algorithms
Data Structures (CS212D) Overview & Review.
Definition In simple terms, an algorithm is a series of instructions to solve a problem (complete a task) We focus on Deterministic Algorithms Under the.
Logistics Instructor: Mohamed Eltabakh
CMPT 438 Algorithms Instructor: Tina Tian.
Week # 1: Overview & Review
Trevor Brown CS 341: Algorithms Trevor Brown
Data Structures (CS212D) Overview & Review.
Design and Analysis of Algorithms (04 Credits / 4 hours per week)
COMP 122 – Design and Analysis of Algorithms
Presentation transcript:

CS223 Algorithms D-Term 2013 Instructor: Mohamed Eltabakh WPI, CS Introduction Slide 1

Lecture Outline Introduction and Definitions Example Problems Course Logistics Slide 2

Definition An algorithm is a finite sequence of step by step, discrete, unambiguous instructions for solving a particular problem –Receives input data –Produces output data –Each instruction can be carried out in a finite amount of time in a deterministic way Slide 3

Definition In simple terms, an algorithm is a series of instructions to solve a problem (complete a task) We focus on Deterministic Algorithms –Under the same input it must produce the same output Algorithm inputoutput Well defined sequence of computer instructions Slide 4

Two Key Properties Correctness –An algorithm is correct if under all valid inputs, it produces the correct output Efficiency –Same problem can have many ways (algorithms) to solve it –Which one is more efficient? –Efficiency means: How long will it take? How much storage will it need? TimeCPU# of instructionsStorageSpaceMemory Slide 5

CS223 Algorithms D-Term 2013 Representative Problems Slide 6

Problem Family I: Sorting –Input A list of unsorted values –Output The corresponding sorted list The algorithm must know how to compare values ( ) Slide 7

Problem Family II: Searching –Input A list of values L, and a key (single value) K –Output The position in L that contain K (if exists) Search for 33? Search for C? Will it make a difference if the list is sorted ??? Slide 8

Problem Family III: Trees –Input A tree of values –Different problems Traverse the tree and list the values Search for a value in the tree Deletion from or insertion into the tree Can you notice a certain order in this tree? Binary Tree Binary Search Tree Left  smaller than Right  greater than Slide 9

Problem Family IV: Graphs –Input A graph of values G –Different problems Traverse the graph Searching for a value in the graph Shortest path from one node to another What is the shortest path from F to B? What is the shortest path from F to all other nodes? Find a minimum spanning tree? Slide 10

Problem Family V: String Processing –Input One or multiple strings –Different problems Search for one string in another Edit distance between strings String alignment Search for sentence “algorithms are fun” Find the smallest difference between this document and another document Slide 11

Too Many Others Protein networks DNA sequence alignment Matrix multiplication Scheduling problem Greatest Common Divisor (GCD) Nearest neighbor (closest gas station to me) Slide 12

Algorithm Design Phases -- What are the inputs? -- What are the outputs? -- What is the functionality? -- Correctness? -- Efficiency? Must give the correct answer under all valid inputs Analyze your algorithm * How fast is it? * Does it consume much resources (CPU, memory, disk, etc…) -- Choose a language to implement your algorithm (E.g., C, Java, Perl, etc…) -- Correct implementation !!! -- Test you algorithm -- Try different inputs -- Check special and corner cases Slide 13

Course Outline (What You Will Learn) Algorithmic Strategies and Methodologies –Tree and graph traversal, Greedy Algorithms, Dynamic Programming, Divide and Conquer Problem Types/Families –Sorting, Searching, Graph and Tree Algorithms, Scheduling and Optimization, String Processing Algorithms on Different Data Structures –Arrays, Trees, Queues, Graphs, Strings, Hash Tables, Linked Lists Analysis and Evaluation –Coding and running algorithms, –Analytical analysis using big-O notation Slide 14

CS223 Algorithms D-Term 2013 Course Logistics Slide 15

Textbook Required Introduction to Algorithms T.H. Cormen, C.E. Leiserson, R.L. Rivest, and C. Stein. Third Edition, MIT Press, ISBN URL: Book Website Slide 16 Available in bookstore Several copies on reserve in library

Course Logistics Website: Electronic WPI system: blackboard.wpi.edu Lectures –MTRF (2:00pm - 2:50pm) Grading –All assignments are done individually Slide 17

Tentative Scheduling Tentative scheduling for assignments, exams, and quizzes –Visit the website: Late Submission Policy –One-day late  10% off the max grade –Two-day late  20% off the max grade –Three-day late  30% off the max grade –Beyond that  no late submission is accepted Slide 18

Course Management Two systems will be maintained –Web Page: –Electronic WPI system: blackboard.wpi.edu Homework/Project submissions –Either at the beginning of class on the due date –Or electronically on blackboard.wpi.edu (Recommended) Viewing Grades –On blackboard.wpi.edu Slide 19

Office Hours Posted on the course web page Covers most days of the week Make use of them– they are there for YOU ! Feel free to send me or stop by my office Slide 20

Programming Language In assignments, use a language of your choice –Most students use either Java, C, or Python In lectures, I will use pseudocode closer to Java or C Slide 21

Slide 22