|
The following is a list of the algorithms described in Wikipedia. See also the list of data structures, list of algorithm general topics and list of terms relating to algorithms and data structures. This is a list of data structures. ...
This is a list of algorithm general topics, by Wikipedia page. ...
The NIST Dictionary of Algorithms and Data Structures is a reference work maintained by the U.S. National Institute of Standards and Technology. ...
If you intend to describe a new algorithm, please read algorithms on Wikipedia first, then add a link to your article and a one-line description here. In mathematics, computing, linguistics, and related disciplines, an algorithm is a procedure (a finite set of well-defined instructions) for accomplishing some task which, given an initial state, will terminate in a defined end-state. ...
Combinatorial algorithms General combinatorial algorithms Floyds cycle-finding algorithm is an algorithm which can detect cycles in arbitrary sequences, whether in data structures or generated on the fly (notably including those in graphs and pseudo-random sequences) in O(1) space. ...
A pseudorandom number generator (PRNG) is an algorithm that generates a sequence of numbers which are not truly random. ...
Blum Blum Shub (BBS) is a pseudorandom number generator proposed in 1986 by Lenore Blum, Manuel Blum and Michael Shub (Blum et al, 1986). ...
The Mersenne twister is a pseudorandom number generator developed in 1997 by Makoto Matsumoto (æ¾æ¬ ç) and Takuji Nishimura (è¥¿æ æå£«). It provides for fast generation of very high quality pseudorandom numbers, having been designed specifically to rectify many of the flaws found in older algorithms. ...
A Lagged Fibonacci generator (LFG) is an example of a pseudorandom number generator. ...
Linear congruential generators (LCGs) represent one of the oldest and best-known pseudorandom number generator algorithms. ...
In mathematics, the RobinsonâSchensted algorithm is a combinatorial algorithm, first discovered by Robinson in 1938, which establishes a bijective correspondence between elements of the symmetric group and pairs of standard Young tableaux of the same shape. ...
In mathematics, a Young tableau is a combinatorial object useful in representation theory. ...
Graph algorithms -
A pictorial representation of a graph In mathematics and computer science, graph theory is the study of graphs, mathematical structures used to model pairwise relations between objects from a certain collection. ...
The Bellman-Ford algorithm computes single-source shortest paths in a weighted digraph (where some of the edge weights may be negative). ...
In graph theory, the single-source shortest path problem is the problem of finding a path between two vertices such that the sum of the weights of its constituent edges is minimized. ...
Dijkstras algorithm, named after its discoverer, Dutch computer scientist Edsger Dijkstra, is an algorithm that solves the single-source shortest path problem for a directed graph with nonnegative edge weights. ...
In graph theory, the single-source shortest path problem is the problem of finding a path between two vertices such that the sum of the weights of its constituent edges is minimized. ...
This article describes perturbation theory as a general mathematical method. ...
In graph theory, the single-source shortest path problem is the problem of finding a path between two vertices such that the sum of the weights of its constituent edges is minimized. ...
In computer science, the Floyd-Warshall algorithm (sometimes known as the Roy-Floyd algorithm or Warshalls algorithm) is an algorithm for solving the all-pairs shortest path problem on weighted, directed graphs in cubic time. ...
Johnsons algorithm is a way to solve the all-pairs shortest path problem in a sparse, weighted, directed graph. ...
Kruskals algorithm is an algorithm in graph theory that finds a minimum spanning tree for a connected weighted graph. ...
The minimum spanning tree of a planar graph. ...
Prims algorithm is an algorithm in graph theory that finds a minimum spanning tree for a connected weighted graph. ...
The minimum spanning tree of a planar graph. ...
Borůvkas algorithm is an algorithm for finding minimum spanning trees. ...
The minimum spanning tree of a planar graph. ...
The Ford-Fulkerson algorithm (named for L. R. Ford and D. R. Fulkerson) computes the maximum flow in a flow network. ...
The max flow min cut theorem is a statement in optimization theory about optimal flows in networks. ...
In computer science and graph theory, the Edmonds-Karp algorithm is an implementation of the Ford-Fulkerson method for computing the maximum flow in a flow network in . ...
A substitute for a 16x16 crossbar switch made from 12 4x4 crossbar switches. ...
A Verizon Central Office in Lakeland, Florida at night. ...
The minimum spanning tree of a planar graph. ...
The spring based algorithm is an algorithm for drawing graphs in an aesthetically pleasing way. ...
As a branch of Graph theory, Graph drawing applies topology and geometry to derive visual and haptic representations of graphs. ...
In graph theory, a topological sort of a directed acyclic graph (DAG) is a linear ordering of its nodes which is compatible with the partial order R induced on the nodes where x comes before y (xRy) if theres a directed path from x to y in the DAG...
The Hungarian algorithm is a combinatorial optimization algorithm which solves assignment problems in time. ...
Dheeraj Gedam This article is about mathematical matchings. ...
A 3-coloring suits this graph, but fewer colors would result in adjacent verticies of the same color. ...
The nearest neighbour algorithm was one of the first algorithms used to determine a solution to the traveling salesman problem, and usually comes to within twenty percent of the optimal route. ...
In computer science, a search algorithm, broadly speaking, is an algorithm that takes a problem as input and returns a solution to the problem, usually after evaluating a number of possible solutions. ...
In computer science, linear search is a search algorithm, also known as sequential search, that is suitable for searching a set of data for a particular value. ...
In computer science, a selection algorithm is an algorithm for finding the kth smallest (or kth largest) number in a list. ...
A binary search algorithm (or binary chop) is a technique for finding a particular value in a linear array, by ruling out half of the data at each step, widely but not exclusively used in computer science. ...
A binary search tree of size 9 and depth 3, with root 7 and leaves 1, 4, 7 and 13. ...
In graph theory, breadth-first search (BFS) is a graph search algorithm that begins at the root node and explores all the neighboring nodes. ...
Depth-first search (DFS) is an algorithm for traversing or searching a tree, tree structure, or graph. ...
Best-first search is a search algorithm which optimizes breadth-first search by expanding the most promising node chosen according to some rule. ...
A priority queue is an ADT (abstract data type) supporting the following two operations: add an element to the queue with an associated priority remove the element from the queue that has the highest priority, and return it The simplest way to implement a priority queue data type is to...
The A* search algorithm (pronounced A star) is a graph search algorithm that finds a path from a given initial node to a given goal node (or one passing a given goal test). ...
In computer science, uniform-cost search (UCS) is a tree search algorithm used for traversing or searching a weighted tree, tree structure, or graph. ...
Interpolation search parallels how humans search through a telephone book. ...
The magnitude of a mathematical object is its size: a property by which it can be larger or smaller than other objects of the same kind; in technical terms, an ordering of the class of objects to which it belongs. ...
In computer science, a hash table is a data structure that speeds up searching for information by a particular aspect of that information, called a key. ...
String algorithms String searching algorithms are an important class of string algorithms that try to find a place where one or several strings (also called patterns) are found within a larger string or text. ...
The Aho-Corasick algorithm is a string searching algorithm discovered by Alfred V. Aho and Margaret J. Corasick. ...
The bitap algorithm (also known as the shift-or, shift-and or Baeza-Yates-Gonnet algorithm) is a fuzzy string searching algorithm developed by Udi Manber and Sun Wu in 1991 based on work done by Ricardo Baeza-Yates and Gaston Gonnet. ...
The Boyer-Moore string search algorithm is a particularly efficient string searching algorithm. ...
Wikisource has original text related to this article: Knuth-Morris-Pratt algorithm The Knuth-Morris-Pratt string searching algorithm searches for occurrences of a pattern string within a main string by employing the simple observation that when a mismatch occurs, the pattern itself embodies sufficient information to determine where the...
The Rabin-Karp algorithm is a string searching algorithm created by Michael O. Rabin and Richard M. Karp that seeks a pattern, i. ...
The longest common subsequence problem (LCS) is finding a longest sequence which is a subsequence of all sequences in a set of sequences (often just two). ...
The longest increasing subsequence problem is to find the longest increasing subsequence of a given sequence. ...
This shortest common supersequence problem is closely related to the lcs (longest-common subsequence problem. ...
The longest common substring problem is to find the longest string(s) that is a substring of two or more strings. ...
Approximate matching In information theory and computer science, the Levenshtein distance or edit distance between two strings is given by the minimum number of operations needed to transform one string into the other, where an operation is an insertion, deletion, or substitution of a single character. ...
The Needleman-Wunsch algorithm performs a global alignment on two sequences (called A and B here). ...
The Smith-Waterman algorithm is a well-known algorithm for performing local sequence alignment; that is, for determining similar regions between two nucleotide or protein sequences. ...
Soundex is a phonetic algorithm for indexing names by their sound when pronounced in English. ...
Metaphone is a phonetic algorithm, an algorithm for indexing words by their sound, when pronounced in English. ...
The New York State Identification and Intelligence System, commonly known as NYSIIS, is a phonetic algorithm devised in 1970 as part of the New York State Identification and Intelligence project. ...
In computer science and mathematics, a sorting algorithm is an algorithm that puts elements of a list in a certain order. ...
A binary search tree of size 9 and depth 3, with root 7 and leaves 1, 4, 7 and 13. ...
Bogosort is a particularly ineffective sorting algorithm. ...
Bubble sort, sometimes shortened to bubblesort, also known as exchange sort, is a simple sorting algorithm. ...
Bucket sort is a sort algorithm that works by partitioning an array into a finite number of buckets and then sorting each bucket. ...
In computer science, comb sort is a relatively simplistic sort algorithm designed by Stephen Lacey and Richard Box, who described it in Byte Magazine in April 1991. ...
Cocktail sort, also known as bidirectional bubble sort, cocktail shaker sort, shaker sort, ripple sort, shuttle sort or happy hour sort, is a stable sorting algorithm that varies from bubble sort in that instead of repeatedly passing through the list from top to bottom, it passes alternately from top to...
Counting sort is a sorting algorithm which (like bucket sort) takes advantage of knowing the range of the numbers in the array to be sorted (array A). ...
Gnome sort is a sort algorithm which is similar to insertion sort except that moving an element to its proper place is accomplished by a series of swaps, as in bubble sort. ...
A run of the heapsort algorithm sorting an array of randomly permutated values. ...
Insertion sort is a simple sorting algorithm, a comparison sort in which the sorted array (or list) is built one entry at a time. ...
A merge sort algorithm used to sort an array of 7 integer values. ...
Pancake sorting is a variation of the sorting problem in which the only allowed operation is to reverse the elements of some prefix of the sequence. ...
Pigeonhole sorting, also known as count sort, is a sorting algorithm that takes linear time (Î(n)), which is the best possible performance for a sorting algorithm since one must inevitably look at each of the elements being sorted at least once, regardless of the sorting algorithm. ...
Quicksort in action on a list of random numbers. ...
To meet Wikipedias quality standards, this article may require cleanup. ...
Selection sort is a sorting algorithm, a comparison sort that works as follows: find the minimum value in the list swap it with the value in the first position sort the remainder of the list (excluding the first value) It is probably the most intuitive sorting algorithm. ...
Shell sort is a sorting algorithm that requires asymptotically fewer than O(n²) comparisons and exchanges in the worst case. ...
The smoothsort sorting algorithm is a variation of heapsort developed by Edsger Dijkstra in 1981. ...
In graph theory, a topological sort of a directed acyclic graph (DAG) is a linear ordering of its nodes which is compatible with the partial order R induced on the nodes where x comes before y (xRy) if theres a directed path from x to y in the DAG...
- Simple Merge algorithm
- k-way Merge algorithm
Merge algorithms are a family of algorithms that run sequentially over multiple sorted lists, typically producing more sorted lists as output. ...
In computer science and information theory, data compression or source coding is the process of encoding information using fewer bits (or other information-bearing units) than an unencoded representation would use through use of specific encoding schemes. ...
The Burrows-Wheeler transform (BWT, also called block-sorting compression), is an algorithm used in data compression techniques such as bzip2. ...
DEFLATE is a lossless data compression algorithm that uses a combination of the LZ77 algorithm and Huffman coding. ...
Delta encoding is a way of storing or transmitting data in form of differences between sequential data rather than complete files. ...
Incremental encoding, also known as front compression or back compression, is a type of delta encoding compression algorithm whereby common prefixes or suffixes and their lengths are recorded so that they need not be duplicated. ...
LZW (Lempel-Ziv-Welch) is an implementation of a lossless data compression algorithm created by Abraham Lempel and Jacob Ziv. ...
LZ77 and LZ78 are the names for the two lossless data compression algorithms published in papers by Abraham Lempel and Jacob Ziv in 1977 and 1978. ...
LZMA, short for Lempel-Ziv-Markov chain-Algorithm, is a data compression algorithm in development since 2001 and used in the 7z format of the 7-Zip archiver. ...
LZO is a data compression algorithm that is focused on decompression speed. ...
PPM is an adaptive statistical data compression technique based on context modeling and prediction. ...
In the field of data compression, Shannon-Fano coding is a technique for constructing a prefix code based on a set of symbols and their probabilities (estimated or measured). ...
Truncated binary encoding is an entropy encoding typically used for uniform probability distributions with a finite alphabet. ...
Run-length encoding (RLE) is a very simple form of data compression in which runs of data (that is, sequences in which the same data value occurs in many consecutive data elements) are stored as a single data value and count, rather than as the original run. ...
Sequitur is an algorithm that uses a grammar formed from a sequence of discrete symbols to represent a problem. ...
EZW (Embedded Zerotree Wavelet) is a lossless data compression algorithm. ...
An entropy encoding is a coding scheme that assigns codes to symbols so as to match code lengths with the probabilities of the symbols. ...
In computer science and information theory, Huffman coding is an entropy encoding algorithm used for lossless data compression. ...
Adaptive Huffman coding is an adaptive coding technique based on Huffman coding, building the code as the symbols are being transmitted, having no initial knowledge of source distribution, that allows one-pass encoding and adaptation to changing conditions in data. ...
The Package-Merge Algorithm is an O(nL)-time algorithm for finding an optimal length-limited Huffman code for a given distribution on a given alphabet of size n, where no code string is permitted to have length more than L. It is greedy algorithm which is a generalization of...
Arithmetic coding is a method for lossless data compression. ...
Ice melting - classic example of entropy increasing[1] described in 1862 by Rudolf Clausius as an increase in the disgregation of the molecules of the body of ice. ...
Range encoding is a form of arithmetic coding, a data compression method, that is believed to be free from arithmetic coding related patents. ...
Arithmetic coding is a method for lossless data compression. ...
An entropy encoding is a coding scheme that assigns codes to symbols so as to match code lengths with the probabilities of the symbols. ...
Unary coding is an entropy encoding that represents a number n with n-1 ones followed by a zero. ...
Elias delta code is a universal code encoding the positive integers. ...
Elias gamma code is a universal code encoding the positive integers. ...
Elias omega coding is a universal code encoding the positive integers. ...
The Fibonacci code is a universal code which encodes positive integers into binary code words. ...
Golomb coding is a form of entropy encoding invented by Solomon W. Golomb that is optimal for alphabets following geometric distributions, that is, when small values are vastly more common than large values. ...
Golomb coding is a form of entropy coding invented by Solomon W. Golomb that is optimal for alphabets following geometric distributions, that is, when small values are vastly more common than large values. ...
Linear predictive coding (LPC) is a tool used mostly in audio signal processing and speech processing for representing the spectral envelope of a digital signal of speech in compressed form, using the information of a linear predictive model. ...
Graph of μ-law & A-law algorithms An a-law algorithm is a standard companding algorithm, used in European digital communications systems to optimize, modify, the dynamic range of an analog signal for digitizing. ...
Graph of μ-law & A-law algorithms The mu-law algorithm (μ-law) is a companding algorithm, primarily used in the digital telecommunication systems of North America and Japan. ...
Fractal compression is a lossy compression method used to compress images using fractals. ...
Transform coding is a type of data compression for natural data like audio signals or photographic images. ...
In data compression, vector quantization is a quantization technique often used in lossy data compression in which the basic idea is to code or replace with a key, values from a multidimensional vector space into values from a discrete subspace of lower dimension. ...
Wavelet compression is a form of data compression well suited for image compression (sometimes also video compression and audio compression). ...
In computer science, computational geometry is the study of algorithms to solve problems stated in terms of geometry. ...
The gift wrapping algorithm is a simple algorithm for computing the convex hull of a given set of points. ...
Convex hull: elastic band analogy In mathematics, the convex hull or convex envelope for a set of points X in a real vector space V is the minimal convex set containing X. (Note that X may be the union of any set of objects made of points). ...
In mathematics, a set can be thought of as any collection of distinct things considered as a whole. ...
The Gilbert-Johnson-Keerthi distance algorithm is a method of determining the minimum distance between two convex shapes. ...
Look up Convex set in Wiktionary, the free dictionary. ...
The Graham scan, named after Ronald Graham, is a method of computing the convex hull of a given set of points in the plane with time complexity O(n log n). ...
Convex hull: elastic band analogy In mathematics, the convex hull or convex envelope for a set of points X in a real vector space V is the minimal convex set containing X. (Note that X may be the union of any set of objects made of points). ...
In computational geometry, the line segment intersection problem supplies a list of line segments in the plane and asks us to determine whether any two of them intersect, or cross. ...
In computational geometry, a sweep line algorithm or plane sweep algorithm is a type of algorithm that uses a conceptual sweep line or sweep surface to solve various problems in Euclidean space. ...
In computational geometry, the point in polygon (also point-in-polygon or PIP) problem asks whether a given point in the plane lies inside, outside, or on the boundary of a simple polygon. ...
This is the Voronoi diagram of a random set of points in the plane (all points lie within the image). ...
It has been suggested that CG artwork be merged into this article or section. ...
Bresenhams line algorithm is an algorithm that determines which points on a 2-dimensional raster should be plotted in order to form a close approximation to a straight line between two given points. ...
This article needs cleanup. ...
Flood fill, also called seed fill, is a recursive algorithm that determines connected regions in a multi-dimensional array. ...
Xiaolin Wus line algorithm is an algorithm for line antialiasing, which was presented in the article An Efficient Antialiasing Technique in the July 1991 issue of Computer Graphics, as well as in the article Fast Antialiasing in the June 1992 issue of Dr. Dobbs Journal. ...
The painters algorithm is one of the simplest solutions to the visibility problem in 3D computer graphics. ...
A ray traced scene. ...
A photorealistic rendered image created by using POV-Ray 3. ...
It has been suggested that Phong reflection model be merged into this article or section. ...
Gouraud shaded sphere - note the inaccuracies towards the edges of the polygons. ...
Scanline rendering is a rendering algorithm in 3D computer graphics that works on a point-by-point basis rather than polygon-by-polygon basis. ...
Global illumination algorithms used in 3D computer graphics are commonly used to add realistic lighting to 3D scenes. ...
In the mathematical subfield of numerical analysis, interpolation is a method of constructing new data points from a discrete set of known data points. ...
Digital zoom is a method of zooming on a digital camera either by increasing the size of the pixels in the image or by interpolating between them. ...
In the mathematical subfield of numerical analysis, spline interpolation is a form of interpolation where the interpolant is a special type of piecewise polynomial called a spline. ...
The red curve is the Runge function, the blue curve is a 5th-degree polynomial, while the green curve is a 9th-degree polynomial. ...
- Epitome: represent an image or video by a smaller image or video.
- Counting objects in an image: Counts the number of objects in a binary image. Uses the connected-component labeling algorithm to first label each object. Then returns the number of labeled objects.
To meet Wikipedias quality standards, this article or section may require cleanup. ...
An epitome (Greek epitemneinâto cut short) is a summary or miniature form, also used as a synonym for embodiment. ...
Blob extraction is an image segmentation technique that categorizes the pixels in an image as belonging to one of many discrete regions. ...
Cryptographic algorithms -
- See also: Topics in cryptography
The German Lorenz cipher machine, used in World War II for encryption of very high-level general staff messages Cryptography (or cryptology; derived from Greek κÏÏ
ÏÏÏÏ kryptós hidden, and the verb γÏάÏÏ gráfo write) is the study of message secrecy. ...
This article is intended to be an analytic glossary, or alternatively, an organized collection of annotated pointers. ...
Symmetric-key algorithms are a class of algorithms for cryptography that use trivially related cryptographic keys for both decryption and encryption. ...
In cryptography, the Advanced Encryption Standard (AES), also known as Rijndael, is a block cipher adopted as an encryption standard by the U.S. government. ...
As a non-regulatory agency of the United States Department of Commerce’s Technology Administration, the National Institute of Standards (NIST) develops and promotes measurement, standards, and technology to enhance productivity, facilitate trade, and improve the quality of life. ...
This article is about the block cipher. ...
General Designer(s) Bruce Schneier First published 1993 Derived from - Cipher(s) based on this design Twofish Algorithm detail Block size(s) 64 bits Key size(s) 32-448 bits in steps of 8 bits; default 128 bits Structure Feistel network Number of rounds 16 Best cryptanalysis Four rounds of...
The Data Encryption Standard (DES) is a cipher (a method for encrypting information) selected as an official Federal Information Processing Standard (FIPS) for the United States in 1976, and which has subsequently enjoyed widespread use internationally. ...
In cryptography, the International Data Encryption Algorithm (IDEA) is a block cipher designed by Xuejia Lai (ä¾å¸å) and James L. Massey of ETH Zurich and was first described in 1991. ...
For the Vietnam road named RC4, see Route Coloniale 4. ...
General Designer(s) Roger Needham and David Wheeler First published 1994 Derived from - Cipher(s) based on this design XTEA Algorithm detail Block size(s) 64 bits Key size(s) 128 bits Structure Feistel network Number of rounds variable; recommended 64 Feistel rounds; 32 cycles Best cryptanalysis TEA suffers from...
In cryptography, an asymmetric key algorithm uses a pair of cryptographic keys to encrypt and decrypt. ...
The Digital Signature Algorithm (DSA) is a United States Federal Government standard or FIPS for digital signatures. ...
The ElGamal algorithm is an asymmetric key encryption algorithm for public key cryptography which is based on Diffie-Hellman key agreement. ...
This article is about an algorithm for public-key encryption. ...
Diffie-Hellman (D-H) key exchange is a cryptographic protocol that allows two parties that have no prior knowledge of each other to jointly establish a shared secret key over an insecure communications channel. ...
NTRUEncrypt, also known as the NTRU encryption algorithm, is an asymmetric key encryption algorithm for public key cryptography. ...
In cryptography, a cryptographic hash function is a hash function with certain additional security properties to make it suitable for use as a primitive in various information security applications, such as authentication and message integrity. ...
In cryptography, MD5 (Message-Digest algorithm 5) is a widely used cryptographic hash function with a 128-bit hash value. ...
RIPEMD-160 (RACE Integrity Primitives Evaluation Message Digest) is a 160-bit message digest algorithm (and cryptographic hash function) developed in Europe by Hans Dobbertin, Antoon Bosselaers and Bart Preneel, and first published in 1996. ...
The SHA (Secure Hash Algorithm) family is a set of related cryptographic hash functions designed by the National Security Agency (NSA) and published by the National Institute of Standards and Technology (NIST). ...
A keyed-hash message authentication code, or HMAC, is a type of message authentication code (MAC) calculated using a cryptographic hash function in combination with a secret key. ...
In cryptography, Tiger is a cryptographic hash function designed by Ross Anderson and Eli Biham in 1996 with a view for efficiency on 64-bit platforms. ...
In computer science, hash trees, also known as Merkle (hash) trees or Tiger tree hashes, are an extension of the simpler concept hash list, which in turn is an extension of the old concept of hashing, for instance, a file. ...
A cryptographically secure pseudo-random number generator (CSPRNG) is a pseudo-random number generator (PRNG) with properties that make it suitable for use in cryptography. ...
Blum Blum Shub (BBS) is a pseudorandom number generator proposed in 1986 by Lenore Blum, Manuel Blum and Michael Shub (Blum et al, 1986). ...
In number theory, the integer factorization problem is the problem of finding a non-trivial divisor of a composite number; for example, given a number like 91, the challenge is to find a number such as 7 which divides it. ...
The Yarrow algorithm is a cryptographically secure pseudo-random number generator. ...
Fortuna is a cryptographically secure pseudo-random number generator (PRNG) devised by Bruce Schneier and Niels Ferguson. ...
The Yarrow algorithm is a cryptographically secure pseudo-random number generator. ...
A linear feedback shift register (LFSR) is a shift register whose input bit is a linear function of its previous state. ...
Each secret share is a plane, and the secret is the point at which three shares intersect. ...
Diffie-Hellman key exchange is a cryptographic protocol which allows two parties to agree on a secret key over an insecure communication channel. ...
Digital signal processing -
Digital signal processing (DSP) is the study of signals in a digital representation and the processing methods of these signals. ...
CORDIC (digit-by-digit method, Volder`s algorithm) (for COordinate Rotation DIgital Computer) is a simple and efficient algorithm to calculate hyperbolic and trigonometric functions. ...
All of the trigonometric functions of an angle θ can be constructed geometrically in terms of a unit circle centered at O. Trigonometric functions: - Cosine, - Sine, - Tangent, - Cosecant, - Secant, - Cotangent In mathematics, the trigonometric functions are functions of an angle; they are important when studying triangles and modeling periodic phenomena, among...
Figure 1: Uniform alternating loading The rainflow-counting algorithm (also known as the rain-flow counting method) is used in the analysis of fatigue data in order to reduce a spectrum of varying stress into a set of simple stress reversals. ...
Figure 1 Stress tensor A mature tree trunk may support a greater force than a fine steel wire but intuitively we feel that steel is stronger than wood. ...
In materials science, fatigue is the progressive, localized, and permanent structural damage that occurs when a material is subjected to cyclic or fluctuating strains at nominal stresses that have maximum values less than (often much less than) the static yield strength of the material. ...
Ordered Subset Expectation Maximisation (OSEM ) is an algorithm for Nuclear Medical Image Reconstruction. ...
The Goertzel algorithm is a digital signal processing (DSP) technique for identifying frequency components of a signal, published by Dr. Gerald Goertzel in 1958. ...
Dual-tone multi-frequency (DTMF), also known as Touch Tone® is used for telephone signaling over the line in the voice frequency band to the call switching center. ...
In mathematics, the discrete Fourier transform (DFT), sometimes called the finite Fourier transform, is a Fourier transform widely employed in signal processing and related fields to analyze the frequencies contained in a sampled signal, solve partial differential equations, and to perform other operations such as convolutions. ...
A fast Fourier transform (FFT) is an efficient algorithm to compute the discrete Fourier transform (DFT) and its inverse. ...
The Cooley-Tukey algorithm, named after J.W. Cooley and John Tukey, is the most common fast Fourier transform (FFT) algorithm. ...
Raders algorithm (1968) is a fast Fourier transform (FFT) algorithm that computes the discrete Fourier transform (DFT) of prime sizes by re-expressing the DFT as a cyclic convolution. ...
Bluesteins FFT algorithm (1968), commonly called the chirp-z algorithm (1969), is a fast Fourier transform (FFT) algorithm that computes the discrete Fourier transform (DFT) of arbitrary sizes (including prime sizes) by re-expressing the DFT as a linear convolution. ...
Bruuns algorithm is a fast Fourier transform (FFT) algorithm based on an unusual recursive polynomial-factorization approach, proposed for powers of two by G. Bruun in 1978 and generalized to arbitrary even composite sizes by H. Murakami in 1996. ...
The Prime-factor algorithm (PFA), also called the Good-Thomas algorithm (1958/1963), is a fast Fourier transform (FFT) algorithm that re-expresses the discrete Fourier transform (DFT) of a size n = n1n2 as a two-dimensional n1 by n2 DFT, but only for the case where n1 and n2...
The Richardson-Lucy algorithm, also known as Richardson-Lucy deconvolution is an iterative procedure for recovering a latent image that has been blurred by a known point spread function. ...
The introduction to this article provides insufficient context for those unfamiliar with the subject matter. ...
Software Engineering (SE) is the design, development, and documentation of software by applying technologies and practices from computer science, project management, engineering, application domains, interface design, digital asset management and other fields. ...
In computer science, Algorithms for Recovery and Isolation Exploiting Semantics, or ARIES is a recovery algorithm designed to work with a no-force, steal database approach. ...
The Unicode collation algorithm provides a standard way to put names, words or strings of text in sequence according to the needs of a particular situation. ...
CHS conversion is a conversion between the geometric coordinate (cylinder/head/sector or CHS) of data on a disks surface and the addressing system used by the disks filesystem (linear base address or LBA). ...
A cyclic redundancy check (CRC) is a type of hash function used to produce a checksum â a small, fixed number of bits â against a block of data, such as a packet of network traffic or a block of a computer file. ...
A parity bit is a binary digit that indicates whether the number of bits with value of one in a given set of bits is even or odd. ...
This article or section should include material from Distributed programming This article or section should include material from Distributed system Distributed computing is the process of aggregating the power of several computing entities to collaboratively run a single computational task in a transparent and coherent way, so that they appear...
The happened-before relationship is important in figuring out partial ordering of events and in producing and synchronizing logical clocks for asynchronous distributed systems. ...
In mathematics, a partially ordered set (or poset for short) is a set equipped with a special binary relation which formalizes the intuitive concept of an ordering. ...
The snapshot algorithm is an algorithm used in distributed systems for recording a consistent global state of an asynchronous system. ...
Vector Clocks is an algorithm for generating a total ordering of events in a distributed system. ...
In mathematics, a total order, linear order or simple order on a set X is any binary relation on X that is antisymmetric, transitive, and total. ...
Marzullos algorithm, invented by Keith Marzullo for his Ph. ...
The Intersection Algorithm is an agreement algorithm used to select sources for estimating accurate time from a number of noisy time sources, it forms part of the modern Network Time Protocol. ...
Memory Allocation and deallocation algorithms In computer science, Boehm-Demers-Weiser garbage collector, often simply known as Boehm GC, is a conservative garbage collector for C and C++, which is used by many projects that are implemented in C or C++, as well as by runtime environments for a number of other languages, including the...
The buddy memory allocation technique is a memory allocation technique that divides memory into partitions to try and satisfy a memory request as suitably as possible. ...
In computer science, garbage collection (also known as GC) is a form of automatic memory management. ...
In computing, garbage collection (also known as GC) is a form of automatic memory management. ...
In computer science, reference counting is a technique of storing the number of references, pointers, or handles to a resource such as an object or block of memory. ...
Disk scheduling algorithms: In computing, an operating system (OS) is the system software responsible for the direct control and management of hardware and basic system operations. ...
The Bankers algorithm is a resource allocation and deadlock avoidance algorithm developed by Edsger Dijkstra that tests for safety by simulating the allocation of pre-determined maximum possible amounts of all resources, and then makes a safe-state check to test for possible deadlock conditions for all other pending...
In a computer operating system which utilises paging for virtual memory memory management, page replacement algorithms decide what pages to page out (swap out) when a page needs to be allocated. ...
The bully algorithm is a method in distributed computing for dynamically selecting a coordinator by process ID number. ...
Process synchronisation algorithms: The elevator algorithm (also SCAN/C-SCAN) is a disk scheduling algorithm to determine the motion of the disks arm and head in servicing read and write requests. ...
Shortest seek first is a disk scheduling algorithm to determine the motion of the disks arm and head in servicing read and write requests. ...
Scheduling algorithms Petersons algorithm is a concurrent programming algorithm for mutual exclusion that allows just two processes to share a single-use resource without conflict, using only shared memory for communication. ...
Lamports bakery algorithm is a computer algorithm devised by computer scientist Dr Leslie Lamport, which is intended to improve the robustness of multiple thread-handling processes by means of mutual exclusion. ...
Dekkers algorithm is a concurrent programming algorithm for mutual exclusion that allows two processes to share a single-use resource without conflict, using only shared memory for communication. ...
It has been suggested that this section be split into a new article entitled Scheduling (communications). ...
In computer science, rate-monotonic scheduling [Liu73] is an optimal preemptive static-priority scheduling algorithm used in real-time operating systems. ...
Earliest deadline first (EDF) scheduling is a dynamic scheduling principle used in real-time operating systems. ...
Fair-share scheduling is a scheduling strategy for computer operating systems in which the CPU usage is equally distributed among system users or groups, as opposed to equal distribution among processes. ...
Round-robin is one of the simplest scheduling algorithms for processes in an operating system, which assigns time slices to each process in equal portions and in order, handling all processes as having the same priority. ...
Shortest job next (SJN) (also known as Shortest Job First (SJF)) is a nonpreemptive method of CPU scheduling that selects the waiting process with the smallest execution time to execute next. ...
Shortest remaining time is a method of CPU scheduling that is a preemptive version of shortest job next scheduling. ...
Least Slack Time (LST) scheduling is a scheduling algorithm. ...
The basic idea of list scheduling is to make an ordered list of processes by assigning them some priorities, and then repeatedly execute the following two steps until a valid schedule is obtained : Select from the list, the process with the highest priority for scheduling. ...
Medical algorithms A medical algorithm is any computation, formula, survey, or look-up table, useful in healthcare. ...
The Texas Medication Algorithm Project (TMAP) is a controversial corporate-sponsored set of psychiatric management guidelines designed to enable doctors to systematically screen and treat patients for diagnosed mental disorders within Texas publicly-funded mental health care system. ...
Neural networks -
A neural network is an interconnected group of neurons. ...
A Hopfield net is a form of recurrent artificial neural network invented by John Hopfield. ...
Backpropagation is a supervised learning technique used for training artificial neural networks. ...
The self-organizing map (SOM) is a subtype of artificial neural networks. ...
Genetic Algorithms Fitness proportionate selection, also known as roulette-wheel selection, is a genetic operator used in genetic algorithms for selecting potentially useful solutions for recombination. ...
Truncation selection is a selection method used in genetic algorithms to select potential candidate solutions for recombination. ...
Tournament selection is one of many methods of selection in genetic algorithms which runs a tournament among a few individuals chosen at random from the population and selects the winner (the one with the best fitness) for crossover. ...
Numerical algebra In computational algebraic geometry and computational commutative algebra, Buchbergers algorithm is a method of transforming a given set of generators for a polynomial ideal into a Gröbner basis with respect to some monomial order. ...
In computer algebra, computational algebraic geometry, and computational commutative algebra, a Gröbner basis is a particular kind of generating subset of an ideal I in a polynomial ring R. One can view it as a multivariate, non-linear generalization of: the Euclidean algorithm for computation of univariate greatest common...
It has been suggested that this article or section be merged with Symbolic computation of matrix eigenvalues. ...
Exponentiating by squaring is an algorithm used for the fast computation of large integer powers of a number. ...
In mathematics and numerical analysis, the Gram-Schmidt process of linear algebra is a method of orthogonalizing a set of vectors in an inner product space, most commonly the Euclidean space Rn. ...
The Knuth-Bendix completion algorithm is an algorithm for transforming a set of equations (over terms) into a confluent term rewriting system. ...
Rewriting in mathematics, computer science and logic covers a wide range of non-deterministic methods of replacing subterms of a formula with other terms. ...
Although polynomials in more than one variable do not form a Euclidean domain, so it is not possible to construct a true division algorithm, an approximate multivariate division algorithm can be constructed. ...
In mathematics, a polynomial is an expression in which constants and variables are combined using only addition, subtraction, multiplication, and positive whole number exponents (raising to a power). ...
Number theoretic algorithms -
Number theory is the branch of pure mathematics concerned with the properties of numbers in general, and integers in particular, as well as the wider classes of problems that arise from their study. ...
In mathematics, specifically in abstract algebra and its applications, discrete logarithms are group-theoretic analogues of ordinary logarithms. ...
In group theory, a branch of mathematics, the baby-step giant-step algorithm refers to a series of well defined steps to compute the discrete logarithm. ...
Pollards rho algorithm for logarithms is an algorithm for solving the discrete logarithm problem analogous to Pollards rho algorithm for solving the Integer factorization problem. ...
In mathematics, the Pohlig-Hellman algorithm is an algorithm for the computation of discrete logarithms in a multiplicative group whose order is a smooth integer. ...
In group theory, the index calculus algorithm is an algorithm for computing discrete logarithms. ...
In number the |