Algorithm: Difference between revisions

From Citizendium
Jump to navigation Jump to search
imported>Jitse Niesen
(move references to Algorithm/Bibliography)
imported>Pat Palmer
mNo edit summary
 
(7 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{subpages}}
{{subpages}}


An '''algorithm''' is a sequence of steps used to solve a problemA cooking recipe can be considered an example of an algorithm, although the term is more frequently applied to the information processing instructions used in computer programs.   
In mathematics or computer science, an '''algorithm''' is a sequence of steps for one particular method of solving a problem, similar to the instructions of a recipe when cookingThe word is derived from the name of [[al-Khwarizmi]], a Persian mathematician who was a librarian in Baghdad in the 9th century CE<ref>BBC online article: <span class="newtab">[https://www.bbc.com/future/article/20201204-lost-islamic-library-maths How modern mathematics emerged from a lost Islamic library]<span>, last access 2/10/2021</ref>.   


==Introduction==
==Introduction==
An algorithm consists of the underlying recipe steps (print the value of X) rather than the actual computer program source code used to execute the steps (PRINT X).  When encoded in computer programs, algorithms operate on data values, preferably data maintained in a consistent [[data structure]].  Thus an algorithm is the recipe, while the data structure is the well-stored ingredients on which the recipe is designed to operate.   
An algorithm consists of the steps to follow in solving a problem.  When encoded in computer programs, algorithms operate on data values, preferably data maintained in a consistent [[data structure]].  Thus an algorithm is the recipe, while the data structure is the well-stored ingredients on which the recipe is designed to operate.   


Nicklaus Wirth, the inventor of the programming language Pascal, titled one of his books "Algorithms + Data Structures = Programs" (ISBN 0130224189) to indicate the complementary nature of algorithms and data structures, and their centrality to computing.   
Nicklaus Wirth, the inventor of the programming language Pascal, titled one of his books "Algorithms + Data Structures = Programs" (ISBN 0130224189) to indicate the complementary nature of algorithms and data structures, and their centrality to computing.   
Line 36: Line 36:
*The [[fast fourier transform]], also known as the fft.
*The [[fast fourier transform]], also known as the fft.
*The [[Euclidean algorithm]], known from number theory.
*The [[Euclidean algorithm]], known from number theory.
== References ==

Latest revision as of 07:49, 10 February 2021

This article is a stub and thus not approved.
Main Article
Discussion
Related Articles  [?]
Bibliography  [?]
External Links  [?]
Citable Version  [?]
 
This editable Main Article is under development and subject to a disclaimer.

In mathematics or computer science, an algorithm is a sequence of steps for one particular method of solving a problem, similar to the instructions of a recipe when cooking. The word is derived from the name of al-Khwarizmi, a Persian mathematician who was a librarian in Baghdad in the 9th century CE[1].

Introduction

An algorithm consists of the steps to follow in solving a problem. When encoded in computer programs, algorithms operate on data values, preferably data maintained in a consistent data structure. Thus an algorithm is the recipe, while the data structure is the well-stored ingredients on which the recipe is designed to operate.

Nicklaus Wirth, the inventor of the programming language Pascal, titled one of his books "Algorithms + Data Structures = Programs" (ISBN 0130224189) to indicate the complementary nature of algorithms and data structures, and their centrality to computing.

Algorithms are usually expressed independently of the programming language, typically in terms of a brief, informal list of commands called pseudocode, or diagrammatically in the form of a flowchart.

Examples of different categories of algorithms used in computer programming include:

  • Bounding limit
  • Compression
  • Conversion
  • Encryption
  • Fourier transform
  • Geometric
  • Graphic
  • Numeric
  • Probabilistic
  • Searching
  • Sorting
  • Text string

Basic algorithm designs

There are several general methods for designing algorithms. Some of the most common are

Some well known algorithms

References

  1. BBC online article: How modern mathematics emerged from a lost Islamic library, last access 2/10/2021