6
1 BIM304: Algorithm Design • Time: Friday 9-12am • Location: B4 • Instructor: Cuneyt Akinlar • Grading 2 Midterms – 20% and 30% respectively Final – 30% Projects – 15%

1 BIM304: Algorithm Design Time: Friday 9-12am Location: B4 Instructor: Cuneyt Akinlar Grading –2 Midterms – 20% and 30% respectively –Final – 30% –Projects

Embed Size (px)

Citation preview

Page 1: 1 BIM304: Algorithm Design Time: Friday 9-12am Location: B4 Instructor: Cuneyt Akinlar Grading –2 Midterms – 20% and 30% respectively –Final – 30% –Projects

1

BIM304: Algorithm Design

• Time: Friday 9-12am• Location: B4• Instructor: Cuneyt Akinlar• Grading

– 2 Midterms – 20% and 30% respectively– Final – 30%– Projects – 15%

Page 2: 1 BIM304: Algorithm Design Time: Friday 9-12am Location: B4 Instructor: Cuneyt Akinlar Grading –2 Midterms – 20% and 30% respectively –Final – 30% –Projects

2

What’s this course about?

• An algorithm (program) is a well-defined computational procedure that – takes some values (data) as “input” – produces some result as “output”

• Many different algorithms may correctly solve a given task– But choice of a particular algorithm may have

enormous impact on time and memory used– Time versus space tradeoffs are very common

ALGORITHMInput (DATA) Output (Results)

Page 3: 1 BIM304: Algorithm Design Time: Friday 9-12am Location: B4 Instructor: Cuneyt Akinlar Grading –2 Midterms – 20% and 30% respectively –Final – 30% –Projects

3

Types of Algorithms• Iterative Algorithms• Recursive (Divide & Conquer) Algorithms• Randomized Algorithms• Greedy Algorithms• Dynamic Programming• Approximation Algorithms• Genetic Algorithms

Page 4: 1 BIM304: Algorithm Design Time: Friday 9-12am Location: B4 Instructor: Cuneyt Akinlar Grading –2 Midterms – 20% and 30% respectively –Final – 30% –Projects

4

Course Goals• Understand the mathematical

fundamentals needed to analyze algorithms

• Learn how to compare the efficiency of different algorithms in terms of running time and memory usage

• Study a number of standard algorithms for data manipulation and learn to use them for solving new problems

Page 5: 1 BIM304: Algorithm Design Time: Friday 9-12am Location: B4 Instructor: Cuneyt Akinlar Grading –2 Midterms – 20% and 30% respectively –Final – 30% –Projects

5

Course Outline• Asymptotic Notations

– Analysis of Iterative and Recursive Algorithms

• Sorting and Selection– Basic Sorting Algorithms– Recursive Sorting Algorithms– Selection and Medians

• Heaps & Heap Sort• Linear Time Sorting

– Counting Sort & Radix Sort

• Advanced Search Trees: B Trees

Page 6: 1 BIM304: Algorithm Design Time: Friday 9-12am Location: B4 Instructor: Cuneyt Akinlar Grading –2 Midterms – 20% and 30% respectively –Final – 30% –Projects

6

Course Outline (cont)• Disjoint Set (Union/Find) Data Structure• Graphs

– Definition, Representation

• Graph Traversal Algorithms– BFS, DFS

• Graph Algorithms– Topological Sort– Minimum Spanning Trees– Shortest Paths

• Introduction 2 Spatial Data Structures– KD-rees