Jump to content

Algorithm design

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Karol Langner (talk | contribs) at 21:13, 14 June 2018 (Fixing some cases). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Algorithm design is a specific method to create a mathematical process in problem solving processes. [citation needed] Applied algorithm design is algorithm engineering.

Algorithm design is identified and incorporated into many solution theories of operation research, such as dynamic programming and divide-and-conquer. Techniques for designing and implementing algorithm designs are algorithm design patterns,[1] such as template method pattern and decorator pattern, and uses of data structures, and name and sort lists.

One of the most important aspects of algorithm design is creating an algorithm that has an efficient runtime, also known as its Big O.

Steps in development of Algorithms

  1. Problem definition
  2. Development of a model
  3. Specification of algorithm
  4. Designing an algorithm
  5. Checking the correctness of algorithm
  6. Analysis of algorithm
  7. Implementation of algorithm
  8. Program testing
  9. Documentation preparation

Common design paradigms

Notes

  1. ^ Goodrich, Michael T.; Tamassia, Roberto (2002), Algorithm Design: Foundations, Analysis, and Internet Examples, John Wiley & Sons, Inc., ISBN 0-471-38365-1

Further reading