8. Greedy Algorithms
An algorithm which always takes the best immediate
or local solution while finding an answer.
Greedy algorithms will always find the overall or
globally optimal solution for some optimization
problems, but may find less-than-optimal solutions for
some instances of other problems.
Greedy algorithm for the Knapsack problem
Minimal spanning tree
10. Divide and Conquer
Break the problems into smaller sub-problems
Solve each of the sub-problems
Combine the solutions to obtain the
solution to the original problem
Binary search in a sorted array (recursion)
Quick sort algorithm (recursion)
12. Dynamic Programming
Dynamic programming is typically used to solve an
optimization problem .
Dynamic Programming is a Bottom-Up Technique in
which the smallest sub-instances are explicitly solved
first and the results of these are used to construct
solutions to progressively larger sub-instances.
Fibonacci numbers computed by iteration.
Warshall ’s algorithm implemented by iterations.
14. Back Tracking
Backtracking is a general algorithm for finding all
solutions to some computational problem ,that
incrementally builds candidates to the solutions, and
abandons each partial candidate c ("backtracks") as
soon as it determines that c cannot possibly be
completed to a valid solution.
Eight queens puzzle.
Traveling salesman problem.
16. Graph Algorithm
A graph algorithm is an algorithm that takes one or
more graphs as inputs. Performance constraints on
graph algorithms are generally expressed in terms of
the number of vertices (|V|) and the number of edges
(|E|) in the input graph.
18. Flow chart
A flowchart is a type of diagram that
represents an algorithm, workflow or
process, showing the steps as boxes
of various kinds, and their order by
connecting them with arrows.
Flowcharts are used in analyzing,
designing, documenting or
managing a process or program in
various fields.
20. Importance of algorithm design
It is used to store and access large
quantities of data efficiently.
It is used to solve complex
computational problems and to
design of good programs
It is important to justify an
algorithm correctness
mathematically
It provides clear , simple and
unambiguous description
21. Conclusion
At last it may said that , the so called program name
Algorithm – design is one of the most enforceable solution
program that can be used to solve any complicated ,
complex , and hard program.
Under considering the above case the concerned authority
included the jubilant students should prefer this program
with great care.