An algorithm is fundamentally a set of rules or defined procedures that is typically designed and used to solve a specific problem or a broad set of problems.

Broadly, algorithms define process(es), sets of rules, or methodologies that are to be followed in calculations, data processing, data mining, pattern recognition, automated reasoning or other problem-solving operations. With the increasing automation of services, more and more decisions are being made by algorithms. Some general examples are; risk assessments, anticipatory policing, and pattern recognition technology.[1]

The following is a list of well-known algorithms along with one-line descriptions for each.

Automated planning

Combinatorial algorithms

General combinatorial algorithms

Graph algorithms

Graph drawing

Network theory

Routing for graphs

Subgraphs

Sequence algorithms

Approximate sequence matching

Selection algorithms

Sequence merging

  • Simple merge algorithm
  • k-way merge algorithm
  • Union (merge, with elements on the output not repeated)

Sequence permutations

Sequence combinations

Sequence alignment

Sequence sorting

Subsequences

Substrings

Computational mathematics

Abstract algebra

Computer algebra

Geometry

Number theoretic algorithms

Numerical algorithms

Differential equation solving

Elementary and special functions

Geometric

Interpolation and extrapolation

Linear algebra

Monte Carlo

Numerical integration

Root finding

Optimization algorithms

Hybrid Algorithms

Computational science

Astronomy

Bioinformatics

Geoscience

  • Vincenty's formulae: a fast algorithm to calculate the distance between two latitude/longitude points on an ellipsoid
  • Geohash: a public domain algorithm that encodes a decimal latitude/longitude pair as a hash string

Linguistics

Medicine

Physics

Statistics

Computer science

Computer architecture

  • Tomasulo algorithm: allows sequential instructions that would normally be stalled due to certain dependencies to execute non-sequentially

Computer graphics

Cryptography

Digital logic

Machine learning and statistical classification

Programming language theory

Parsing

Quantum algorithms

Theory of computation and automata

Information theory and signal processing

Coding theory

Error detection and correction

Lossless compression algorithms

Lossy compression algorithms

Digital signal processing

Image processing

Software engineering

Database algorithms

Distributed systems algorithms

Memory allocation and deallocation algorithms

Networking

Operating systems algorithms

Process synchronization

Scheduling

I/O scheduling

Disk scheduling

See also

References

Wikiwand in your browser!

Seamless Wikipedia browsing. On steroids.

Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.

Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.