Enstrumantal Analiz II (Prepared by Cuneyt SARICA) (M.M.) (1)
1 BIM304: Algorithm Design Time: Friday 9-12am Location: B4 Instructor: Cuneyt Akinlar Grading –2...
Transcript of 1 BIM304: Algorithm Design Time: Friday 9-12am Location: B4 Instructor: Cuneyt Akinlar Grading –2...
![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.](https://reader036.fdocuments.net/reader036/viewer/2022082904/5697bf751a28abf838c803ed/html5/thumbnails/1.jpg)
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.](https://reader036.fdocuments.net/reader036/viewer/2022082904/5697bf751a28abf838c803ed/html5/thumbnails/2.jpg)
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.](https://reader036.fdocuments.net/reader036/viewer/2022082904/5697bf751a28abf838c803ed/html5/thumbnails/3.jpg)
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.](https://reader036.fdocuments.net/reader036/viewer/2022082904/5697bf751a28abf838c803ed/html5/thumbnails/4.jpg)
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.](https://reader036.fdocuments.net/reader036/viewer/2022082904/5697bf751a28abf838c803ed/html5/thumbnails/5.jpg)
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.](https://reader036.fdocuments.net/reader036/viewer/2022082904/5697bf751a28abf838c803ed/html5/thumbnails/6.jpg)
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