Presentation is loading. Please wait.

Presentation is loading. Please wait.

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.

Similar presentations


Presentation on theme: "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."— Presentation transcript:

1 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 input Algorithm output Well defined sequence of computer instructions

2 Two Key Properties Correctness Efficiency Time CPU # of instructions
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? Time CPU # of instructions Storage Space Memory

3 Representative Problems
CS223 Algorithms D-Term 2013 Representative Problems

4 Problem Family I: Sorting
Input A list of unsorted values Output The corresponding sorted list The algorithm must know how to compare values (<, =, or >)

5 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 ???

6 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 Search Tree Left  smaller than Right  greater than Binary Tree

7 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?

8 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

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

10 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

11 CS223 Algorithms D-Term 2015 Course Logistics

12 Textbook Required Introduction to Algorithms
T.H. Cormen, C.E. Leiserson, R.L. Rivest, and C. Stein. Third Edition, MIT Press, 2009.

13 Course Logistics Website: http://web.cs.wpi.edu/~cs2223/d15
Electronic WPI system: blackboard.wpi.edu Lectures MTRF (2:00pm - 2:50pm) Grading All assignments are done individually

14 Scheduling Scheduling for assignments, exams, and quizzes
Visit the website:

15 Course Management Course Webpage: Homework/Project submissions
Electronically on blackboard.wpi.edu (Required) Viewing Grades On blackboard.wpi.edu

16 Office Hours Posted on the course web page
Covers most days of the week Make use of them– they are there for YOU !

17

18 Programming Language In assignments, use Python
In lectures, I will use pseudocode closer to Python

19


Download ppt "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."

Similar presentations


Ads by Google