# BIM304: Algorithm Design

Τεχνίτη Νοημοσύνη και Ρομποτική

23 Οκτ 2013 (πριν από 4 χρόνια και 8 μήνες)

102 εμφανίσεις

1

BIM304: Algorithm Design

Time:

Friday 9
-
12am

Location:

B1

Instructor:

Muzaffer
DOĞAN

2 Midterms

20% and 30% respectively

Final

30%

Projects

20%

2

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

But choice of a particular algorithm may have
enormous impact on time and memory used

Time versus space tradeoffs are very common

ALGORITHM

Input (DATA)

Output (Results)

3

Types of Algorithms

Iterative Algorithms

Recursive (Divide & Conquer) Algorithms

Randomized Algorithms

Greedy Algorithms

Dynamic Programming

Approximation Algorithms

Genetic Algorithms

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

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

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

Introduct
ion

2
Spatial Data Structures

KD
-
rees