MCS-31 Block 1 Introduction To Algorithmics Unit-1 Elementary Algorithmics
By Kirit A. D. (MBA, PMP, ITIL, MCTS, Six Sigma Black Belt)
10/27/2013 1
Content
Elementary Algorithmics Example of an algorithm Problems and Instances Characteristics of an algorithm Problems, Available tools & Algorithms Building Blocks of Algorithms Outline of Algorithmics
10/27/2013
Example of An Algorithm
Elementary Algorithmics Variable = Expression Find GCD Euclids Algorithm for Finding GCD of Two Natural Numbers m & n
10/27/2013
Problems And Instances
Elementary Algorithmics
Where a, b, c may be any real numbers except the restriction that a 0 Now, if we take a = 3, b = 4 and c=1 X = -1/3 or -1
10/27/2013
Characteristics Of An Algorithm
Elementary Algorithmics Finiteness Definiteness Inputs Output Effectiveness
10/27/2013
Problems, Available Tools & Algorithms
Elementary Algorithmics Multiplication 150 x 12
Standard Counting 150 twelve times la russe method
10/27/2013
Building Blocks of Algorithms
Elementary Algorithmics Variable expression Direct sequencing ie. Writing of the instructions, one after the other on successive lines, or even on the some line if there is enough space on a line and separated by some statement separator, by semi-colons and in the order of intended execution Procedure and Recursion
7
10/27/2013
Outline of Algorithmics
Elementary Algorithmics The problem, which has at least one algorithmic solution, is called algorithmic or computable problem.
Divide and conquer Dynamic programming The greedy approach Backtracking Branch and bound Searches and traversals
8
10/27/2013
Outline of Algorithmics
Elementary Algorithmics
Some of the problem types, enumerated below
Sorting problems Searching problems Linear programming problems Number-theory problems String processing problems Graph problems Geometric problems Numerical problems
9
10/27/2013
Outline of Algorithmics
Elementary Algorithmics
Understanding the Problem Analyzing the problem Capabilities of the computer system Approximate v/s exact solution Choice of appropriate data structures Choice of appropriate design technology Specification methods for algorithms Proving correctness of an algorithm Analyzing and algorithm Coding he algorithm
10
10/27/2013
10/27/2013
12