## Monday, June 25, 2007

### Getting Start to Algorithm Tutorials

"An algorithm is any well-defined computational procedure that takes some value, or set of values, as input and produces some value, or set of values as output."

Introduction to Algorithms (Second Edition by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein)

Kinds of Algorithm
- Sorting
- Shortest Path
- Approximate
- Random
- Compression

Almost everything that you do with a computer relies in some way on an algorithm that someone has worked very hard to figure out. Even the simplest application on a modern computer would not be possible without algorithms being utilized behind the scenes to manage memory and load data from the hard drive.

Applications of complicated algorithms,
- Maximum flow problem
Determining the best way to get some sort of stuff from one place to another, through a network of some sort.
- Dynamic programming
Finds differences between two sequences. More specifically, it calculates the minimum number of insertions, deletions, and edits required to transform sequence A into sequence B. O(N*M), where N and M are the numbers of elements in the two sequences

Sin, Cos Concepts http://www.phy6.org/stargaze/Strig3.htm
a line perpendicular = 90 degree line

Source: http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=alg_index