Data structure  Algorithm, properties of an algorithm, types of algorithms
Define an algorithm. What are the properties of an algorithm? What are the types of algorithms?An algorithm is a series of steps or methodology to solve a problem.
Properties of an algorithm:  It is written in simple English.  Each step of an algorithm is unique and should be self explanatory.  An algorithm must have at least one input.  An algorithm must have at least one output.  An algorithm has finite number of steps.
Types: Types of algorithms are categorized based on the context they are spoken about. Some commonly used: Brute force: An extremity raw method that aims to finds variety of solutions and which ones the best. Reduction: Tries and converts the given problem to a simpler and a better known problem whose complexity is not dominated by the resulting reduced algorithm's. Linear programmings, Graphs, random are the other types of algorithms.Define an algorithm. What are the properties of an algorithm? What are the types of algorithms?Algorithm: A step by step process to get the solution for a well defined problem.
Properties of an algorithm:  Should be written in simple English  Should be unambiguous, precise and lucid  Should provide the correct solutions  Should have an end point  The output statements should follow input, process instructions  The initial statements should be of input statements  Should have finite number of steps  Every statement should be definitive
Types of algorithms: – Simple recursive algorithms. Ex: Searching an element in a list – Backtracking algorithms Ex: Depthfirst recursive search in a tree – Divide and conquer algorithms. Ex: Quick sort and merge sort – Dynamic programming algorithms. Ex: Generation of Fibonacci series – Greedy algorithms Ex: Counting currency – Branch and bound algorithms. Ex: Travelling salesman (visiting each city once and minimize the total distance travelled) – Brute force algorithms. Ex: Finding the best path for a travelling salesman – Randomized algorithms. Ex. Using a random number to choose a pivot in quick sort).
