Difference between revisions of "Algorithm"

(remove nonexistent category)
 
(3 intermediate revisions by 2 users not shown)
Line 1: Line 1:
An algorithm is a mathematical rule or procedure for solving a problem that is applied in other sciences like Computer Science, where it plays a very significant role. Algorithms can be implemeted as pseudocode, flowcharts or written text. The running time of an algorithm describes the time it needs to run in a polynomial form. Thus, there are P and NP problems. An NP problem does not have a standard solution, contrary to P problems.
+
An '''algorithm''' is a rule or procedure for solving a problem.  The field of [[computer science]] is largely devoted to the study of algorithms.
 +
 
 +
Algorithms can be described in many different ways.  Common forms are as code in a [[programming language]], as [[pseudocode]], as flowcharts (for example, the pictoral description of a [[Turing machine]]) or in written text.
 +
 
 +
The [[Church-Turing Thesis]] (a [[meta-mathematics | meta-mathematical]] statement) asserts that any "reasonable" method of computation is equivalent to any other, i.e., any algorithm that can be implemented in one computational device can be implemented in any other.  As a consequence, the notion of algorithm is independent of the choice of implementation.
 +
 
 +
 
 +
 
 +
== Time and space ==
 +
 
 +
Given a fixed method of implementing algorithms (for example, the Turing machine, or a fixed programming language) we may ask how much computational resources an algorithm consumes. In particular, it is often of practical importance to know how much time and how much memory a given algorithm consumes.
 +
 
 +
== See Also ==
 +
* [[Computability and complexity]]
 +
 
  
 
{{stub}}
 
{{stub}}
[[Category:Computer Science]]
 

Latest revision as of 19:06, 23 January 2017

An algorithm is a rule or procedure for solving a problem. The field of computer science is largely devoted to the study of algorithms.

Algorithms can be described in many different ways. Common forms are as code in a programming language, as pseudocode, as flowcharts (for example, the pictoral description of a Turing machine) or in written text.

The Church-Turing Thesis (a meta-mathematical statement) asserts that any "reasonable" method of computation is equivalent to any other, i.e., any algorithm that can be implemented in one computational device can be implemented in any other. As a consequence, the notion of algorithm is independent of the choice of implementation.


Time and space

Given a fixed method of implementing algorithms (for example, the Turing machine, or a fixed programming language) we may ask how much computational resources an algorithm consumes. In particular, it is often of practical importance to know how much time and how much memory a given algorithm consumes.

See Also


This article is a stub. Help us out by expanding it.