Saturday, August 1, 2009

learning:ALGORITHM

Introduction:

 

An algorithm is finite of instructions that, it followed, accomplishes a particular task. In addition, all algorithms must satisfy the following criteria:

 

  1. Input. Zero or more quantities are externally supplied.
  2. Output. At least one quantity is produced
  3. Definiteness. Each instruction is clear and unambiguous.
  4. Finiteness. If we trace out the instructions of an algorithm, then for all cases, the algorithm terminates after a finite number of steps.
  5. Effectiveness. Every instruction must be very basic so that it can be carried out , in principle, by a person using only pencil and paper. It is not enough that each operation be definite as in criterion 3; it also must be feasible.

 

 

An algorithm is composed of a finite set of steps, each of which may require one or more operations. The possibility of a computer carrying out these operations necessities that certain constraints be placed on the type of operations an algorithm can include.

 

The Study of algorithms includes many important and active areas of research. There are four distinct areas of study one can identify:

 

1. How to devise algorithms:   Creating an algorithm is an art which may never be fully automated. Study various design techniques that have been proven to be useful in that have often yielded good algorithms. By mastering these design strategies, it will become easier for anyone to devise new and useful algorithm.

 

2. How to validate algorithms: Once an algorithm is devised, it is necessary to show that it computes the correct answer for all possible legal inputs. We refer to this process as algorithm validation. Once the validity of the method has been shown, a program can be written and a second phase begins. This phase is referred to as program proving or sometimes program verification.

 

3. How to analyze algorithms: This field of study is called analysis of algorithms. Analyze of algorithms or performance analysis refers to the task of determining how much computing time and storage an algorithm requires. This is a challenging area which requires great challenging mathematical skill.

 

4. How to test a program: Testing a program consists of two phases: debugging and profiling. Debugging is the process of executing programs on sample data sets to determine whether faulty result occurs and if so, to correct them. Profiling or performance measurement is the process of executing a correct program on data sets and measuring the time and space it takes to compute the results.    

 

No comments:

Post a Comment

Simple and Complete E-commerce PL/SQL Code

This is a Database of e-commerce solution. This database is quite simple but complete one.  The script (.sql file) contain all the nece...