Showing posts with label searching. Show all posts
Showing posts with label searching. Show all posts

Monday, June 01, 2020

Basic Questions and Answers on Algorithms

1. Define Algorithm.

An algorithm is a sequence of unambiguous instructions for solving a problem in a finite amount of time.

2.Write a short note on Algorithm Design and Analysis of Process.
o Understand the problem
o Decide onComputational DeviceExact Vs Approximate Algorithms

o Algorithm Design Techniques
o Design an algorithms
o Prove Correctness

o Analyze the Algori thm
o Code the Algorithm


3. What are the 2 kinds of Algorithm Efficiency

Time Efficiency-How fast your algorithm runs?

Space Efficiency-How much extra memory your algorithm needs?

 4. How can you specify Algorithms?

Algorithms can be specified natural language or pseudo code. 

5. What is Pseudo Code?

Pseudo Code is a mixture of Natural Language and Programming Language Constructs such as functions, loops, decision making statements..etc

6. What are the Important Problem Types?
Sorting
Searching
String Processing
Graph Problem
Combinatorial Problem
Geometric Problem
Numerical Problem


7.How can you Classify Algorithms
Among several ways to classify algorithms, the 2 principal alternatives are
To group algorithms according to types of problem they solve com
To group algorithms according to underlying design techniques they are based upon


8. What is Sorting Problem?

Sorting algorithm is rearrange the items of given list descending/ascending order. Sorting algorithms classified into
Stable Sorting Algorithm
Non-Stable Algorithm


9.What is Searching Problem?
Finding a given value, called search key given set.  Searching Algorithms needs more
memory space   and sorted array.

10. What is Graph Problem?
Graph is a collection of dg s and vertices. G=(V,E). For e.g. Traversal Algorithms, Shortest
Path Algorithm, Graph Colouring Problem
11. What is Combinatorial  Problem.
This problem that ask to find combinatorial object such as permutations, combinations or a
subset. Combinatorial problems are most difficult to solve. For eg Travelling sales man
problem

12. Differentiate Time Efficiency and Space Efficiency?

Time Efficiency measured by counting the number of times the algorithms basic operation is executed. Space Efficiency is measured by counting the number of extra memory units consumed by the algorithm.

13. What are the features of efficient algorithm?
Free of ambiguity
Efficient in execution time
Concise and compact Completeness
Definiteness Finiteness


14.Define Order of Algorithm

The order of algorithm is a standard notation of an algorithm that has been developed to represent function that bound the computing time for algorithms.The order of an algorithm is a way of defining its efficiency. It is usually referred as O-notation

15.  Define Big Omega Notation.
Omega notation provides lower bound for the function t

A function t(n) is said to Omega (g(n)), if there exist some.positive constant C and some non negative integer N0, such that

t(n)>=Cg(n) for all n>=n0 

     16.What is Big ‘Oh’     
               Notation.


The Big ‘Oh’ notation provides an upper bound for the function t.A function t(n) is said to be O(g(n)), if there exist some positive constant C and some non negative number,suchthat, t(n)<=Cg(n), for all n>=no


17. What are the different types of time complexity?
The time complexity can be classified into 3 types, they are
Worst case analysis
Average case analysis
Best case analysis


18.How the algorithm’s time efficiency is measured.

Time efficiency indicates how fast an algorithm runs. Time taken by a program to complete its task depends on the number of steps in an algorithm.

The time taken by an algorithm is the sum of compile time and execution time. The compile time does not depend on the instance characteristics

Search Aptipedia