محتويات
[أخف]
* 1 الخوارزميات
* 2 خوارزميات توافقية Combinatorial algorithms
o 2.1 الخوارزميات التوافقية العامة
o 2.2 خوازميات المخططات
o 2.3 خوارزميات البحث
o 2.4 خوارزميات السلاسل النصية String algorithms
+ 2.4.1 البحث
+ 2.4.2 المطابقة مع الأقرب Approximate matching
o 2.5 خوارزميات الترتيب
o 2.6 خوارزميات الدمج
* 3 خوارزميات الضغط
o 3.1 Lossless compression algorithms
o 3.2 Lossy compression algorithms
* 4 هندسة حاسوبية Computational geometry
* 5 رسوميات حاسوبية
* 6 رؤية حاسوبية Computer vision
* 7 Cryptographic algorithms
* 8 معالجة الإشارات الرقمية Digital signal processing
* 9 Distributed systems algorithms
* 10 خوارزميات جينية
* 11 خوارزميات طبية
* 12 Memory Allocation and deallocation algorithms
* 13 شبكات عصبونية
* 14 جبر عددي Numerical algebra
* 15 خوارزميات نظرية عددية
* 16 خوارزميات عددية
* 17 خوارزميات أنظمة التشغيل
* 18 رياضيات الاستمثال
* 19 Parsing
* 20 خوارزميات كمومية
* 21 هدسة البرمجيات
* 22 نظرية التحسيب و الأتمتة
* 23 مواضيع أخرى
[عدل] الخوارزميات
See also the قائمة بنى البيانات, قائمة مواضيع الخوارزميات العامة and قائمة المصطلحات المتعلقة بالخوارزميات و بنى البيانات.
[عدل] خوارزميات توافقية Combinatorial algorithms
[عدل] الخوارزميات التوافقية العامة
* Floyd's cycle-finding algorithm: finds cycles in iterations
* (uniformly distributed) Pseudorandom number generators:
o Blum Blum Shub
o Mersenne twister
* Robinson-Schensted algorithm: generates permutations from pairs of Young tableaux
[عدل] خوازميات المخططات
مقالة رئيسية : نظرية المخططات
* Bellman-Ford algorithm: computes shortest paths in a weighted graph (where some of the edge weights may be negative)
* Dijkstra's algorithm: computes shortest paths in a graph with non-negative edge weights
* Floyd-Warshall algorithm: solves the all pairs shortest path problem in a weighted, directed graph
* Johnson algorithm: All pairs shortest path algorithm in sparse weighted directed graph
* Kruskal's algorithm: finds a minimum spanning tree for a graph
* Prim's algorithm: finds a minimum spanning tree for a graph
* Boruvka's algorithm: finds a minimum spanning tree for a graph
* Ford-Fulkerson algorithm: computes the maximum flow in a graph
* Edmonds-Karp algorithm: implementation of Ford-Fulkerson
* Nonblocking Minimal Spanning Switch say, for a telephone exchange
* Spring based algorithm: algorithm for graph drawing
* Topological sort
* Hungarian algorithm: algorithm for finding a perfect matching
* Coloring algorithm: Graph coloring algorithm.
* Nearest neighbour algorithm: Nearest neighbor algorithm
[عدل] خوارزميات البحث
* بحث خطي Linear search : إيجاد عنصر في قائمة غير مرتبة .
* خوارزمية الاختيار Selection algorithm : إيجاد أكبر (ثاني , ثالث , ...) عنصر في القائمة .
* Binary search algorithm: locates an item in a sorted list
* Binary search tree
* Breadth-first search: traverses a graph level by level
* Depth-first search: traverses a graph branch by branch
* Best-first search: traverses a graph in the order of likely importance using a priority queue
* A* tree search: special case of best-first search that uses heuristics to improve speed
* Uniform-cost search: a tree search that finds the lowest cost route where costs vary
* Predictive search: binary like search which factors in magnitude of search term versus the high and low values in the search. Sometimes called dictionary search or interpolated search.
* Hash table: finds an item in an unsorted collection in O(1) time.
[عدل] خوارزميات السلاسل النصية String algorithms
[عدل] البحث
* Aho-Corasick algorithm
* Bitap algorithm
* Boyer-Moore string search algorithm
* Knuth-Morris-Pratt algorithm
* Rabin-Karp string search algorithm
* Longest-common subsequence problem: Haskell's dynamic programming algorithm
* Longest increasing subsequence problem
* Shortest common supersequence problem
* longest common substring problem
[عدل] المطابقة مع الأقرب Approximate matching
* Levenshtein edit distance
* Needleman-Wunsch algorithm
* Smith-Waterman algorithm
* Soundex
[عدل] خوارزميات الترتيب
* Binary tree sort
* Bogosort
* Bubble sort: for each pair of indices, swap the items if out of order
* Bucket sort
* Comb sort
* Cocktail sort
* Counting sort
* Gnome sort
* Heapsort: convert the list into a heap, keep removing the largest element from the heap and adding it to the end of the list
* Insertion sort: determine where the current item belongs in the list of sorted ones, and insert it there
* Merge sort: sort the first and second half of the list separately, then merge the sorted lists
* Pancake sorting
* Pigeonhole sort
* Quicksort: divide list into two, with all items on the first list coming before all items on the second list.; then sort the two lists. Often the method of choice
* Radix sort: sorts strings letter by letter
* Selection sort: pick the smallest of the remaining elements, add it to the end of the sorted list
* Shell sort: an attempt to improve insertion sort
* Smoothsort
* Topological sort
[عدل] خوارزميات الدمج
* Simple Merge algorithm
* k-way Merge algorithm
[عدل] خوارزميات الضغط
[عدل] Lossless compression algorithms
* Burrows-Wheeler transform: preprocessing useful for improving lossless compression
* DEFLATE: lossless data compression
* Delta encoding: aid to compression of data in which sequential data occurs frequently
* Incremental encoding: delta encoding applied to sequences of strings
* LZW: lossless data compression (Lempel-Ziv-Welch)
* LZ77 (algorithm): LZ77 and LZ78 are the names for the two lossless data compression algorithms
* LZMA: short for Lempel-Ziv-Markov chain-Algorithm
* LZO: data compression algorithm that is focused on speed
* PPM compression algorithm
* Shannon-Fano coding
* Truncated binary encoding
* Run-length encoding: lossless data compression taking advantage of strings of repeated characters
* SEQUITUR algorithm: lossless compression by incremental grammar inference on a string
* EZW (Embedded Zerotree Wavelet)
* Entropy encoding: coding scheme that assigns codes to symbols so as to match code lengths with the probabilities of the symbols
o Huffman coding: simple lossless compression taking advantage of relative character frequencies
+ Adaptive Huffman coding: adaptive coding technique based on Huffman coding
o Arithmetic coding: advanced entropy coding
o Range encoding: data compression method that is believed to approach the compression ratio of arithmetic coding
* Entropy coding with known entropy characteristics
o Unary coding: code that represents a number n with n ones followed by a zero
o Elias delta|gamma|omega coding: universal code encoding the positive integers
o Fibonacci coding: universal code which encodes positive integers into binary code words
o Golomb coding: form of entropy coding that is optimal for alphabets following geometric distributions
o Rice coding: form of entropy coding that is optimal for alphabets following geometric distributions
[عدل] Lossy compression algorithms
* Linear predictive coding: lossy compression by representing the spectral envelope of a digital signal of speech in compressed form
* A-law algorithm: standard companding algorithm
* Mu-law algorithm: standard analog signal compression or companding algorithm
* Fractal compression: method used to compress images using fractals
* Transform coding: type of data compression for "natural" data like audio signals or photographic images
* Vector quantization: technique often used in lossy data compression
* Wavelet compression: form of data compression well suited for image compression (sometimes also video compression and audio compression)
[عدل] هندسة حاسوبية Computational geometry
* Gift wrapping algorithm: determining the convex hull of a set of points
* Gilbert-Johnson-Keerthi distance algorithm: determining the smallest distance between two convex shapes.
* Graham scan determining the convex hull of a set of points in the plane
* Point in polygon: tests whether a given point lies within a given polygon
[عدل] رسوميات حاسوبية
* Bresenham's line algorithm: plots points of a 2-dimensional array to form a straight line between 2 specified points (uses decision variables)
* Line drawing algorithm: graphical algorithm for approximating a line segment on discrete graphical media.
* DDA line algorithm: plots points of a 2-dimensional array to form a straight line between 2 specified points (uses floating-point math)
* Flood fill: fills a connected region of a multi-dimensional array with a specified symbol
* Xiaolin Wu's line algorithm: algorithm for line antialiasing.
* Painter's algorithm: detects visible parts of a 3-dimensional scenery
* Ray tracing: realistic image rendering
* Phong shading: an illumination model and an interpolation method in 3D computer graphics
* Gouraud shading: an algorithm to simulate the differing effects of light and colour across the surface of an object in 3D computer graphics
* Scanline rendering: constructs an image by moving an imaginary line over the image
* Global illumination algorithms: Considers direct illumination and reflection from other objects.
* Interpolation: Constructing new data points such as in digital zoom.
* Spline interpolation: Reduces error with Runge's phenomenon.
[عدل] رؤية حاسوبية Computer vision
* Epitome: represent an image or video by a smaller image or video.
[عدل] Cryptographic algorithms
(See also Topics in cryptography for an 'analytical glossary')
* Symmetric (secret key) encryption:
o Advanced Encryption Standard (AES), winner of NIST competition
o Blowfish
o Data Encryption Standard (DES), sometimes DE Algorithm, winner of NBS selection competition, replaced by AES for most purposes
o IDEA
o RC4 (cipher)
* Asymmetric (public key) encryption:
o DSA
o ElGamal
o RSA
o Diffie-Hellman key exchange
o NTRUEncrypt
* Cryptographic Message digest functions:
o MD5 – Note that there is now a method of generating collisions for MD5
o RIPEMD-160
o SHA-1
o HMAC: keyed-hash message authentication
o Tiger (TTH), usually used in Tiger tree hashes
* Cryptographically secure pseudo-random number generators
o Blum Blum Shub - based on the hardness of factorization
o Yarrow algorithm
o Fortuna, allegedly an improvement on Yarrow
* Other
o Diffie-Hellman: key exchange
[عدل] معالجة الإشارات الرقمية Digital signal processing
* CORDIC: Fast trigonometric function computation technique.
* Rainflow-counting algorithm: Reduces a complex stress history to a count of elementary stress-reversals for use in fatigue analysis
* Osem: algorithm for processing of medical images
* Goertzel algorithm Can be used for DTMF digit decoding.
* Discrete Fourier transform: determines the frequencies contained in a (segment of a) signal
o Fast Fourier transform
o Cooley-Tukey FFT algorithm
o Rader's FFT algorithm
o Bluestein's FFT algorithm
o Bruun's FFT algorithm
o Prime-factor FFT algorithm
* Richardson-Lucy deconvolution: image de-blurring algorithm
[عدل] Distributed systems algorithms
* Lamport ordering: a partial ordering of events based on the happened-before relation
* Snapshot algorithm: a snapshot is the process of recording the global state of a system
* Vector clocks: a total ordering of events
* Marzullo's algorithm: distributed clock synchronization
* intersection algorithm: Another clock agreement algorithm.
[عدل] خوارزميات جينية
* Fitness proportionate selection: also known as roulette-wheel selection
[عدل] خوارزميات طبية
* Medical algorithm
* Texas Medication Algorithm Project
[عدل] Memory Allocation and deallocation algorithms
* Boehm garbage collector: Conservative garbage collector
* Buddy memory allocation: Algorithm to allocate memory such that fragmentation is less.
* Generational garbage collector: Fast garbage collectors that segregate memory by age
* Mark and sweep
* Reference counting
[عدل] شبكات عصبونية
* Backpropagation
* Self-organizing map
[عدل] جبر عددي Numerical algebra
* Buchberger's algorithm: finds a Gröbner basis
* Eigenvalue algorithm
* Exponentiating by squaring: quickly computes powers of numbers and matrices
* Gram-Schmidt process: orthogonalizes a set of vectors
* Knuth-Bendix completion algorithm: for rewriting rule systems
* Multivariate division algorithm: for polynomials in several indeterminates
[عدل] خوارزميات نظرية عددية
* خوارزمية متقطعة Discrete logarithm :
o Baby-step giant-step
o Pollard's rho algorithm for logarithms
o Pohlig-Hellman algorithm
o Index calculus algorithm
* Euclidean algorithm: computes the greatest common divisor
* Extended Euclidean algorithm: Also solves the equation ax+by = c.
* Binary gcd algorithm: طريقة فعالة لحساب gcd.
* Integer factorization: breaking an integer into its prime factors
o prime factorization algorithm
o Fermat's factorization method
o Trial division
o Lenstra elliptic curve factorization
o Pollard's rho algorithm
o Pollard's p-1 algorithm
o Congruence of squares
o Quadratic sieve
o Dixon's algorithm
o Special number field sieve
o General number field sieve
* Multiplication algorithms: fast multiplication of two numbers
* Booth's multiplication algorithm
* Primality tests: determining whether a given number is prime
o AKS primality test
o Miller-Rabin primality test
o Sieve of Eratosthenes
o Sieve of Atkin
[عدل] خوارزميات عددية
See also main article numerical analysis and list of numerical analysis topics
* Dancing Links: finds all solutions to the exact cover problem
* De Boor algorithm: computes splines
* De Casteljau's algorithm: computes Bezier curves
* False position method: approximates roots of a function
* Gauss-Jordan elimination: solves systems of linear equations
* Gauss-Legendre algorithm: computes the digits of pi
* Kahan summation algorithm: a more accurate method of summing floating-point numbers
* MISER algorithm: Monte Carlo simulation, numerical integration
* Newton's method: finds zeros of functions with calculus
* Rounding functions: the classic ways to round numbers
* Secant method: approximates roots of a function
* Shifting nth-root algorithm: digit by digit root extraction
* Square root: approximates the square root of a number
* Strassen algorithm: faster matrix multiplication
* Symbolic Cholesky decomposition: Efficient way of storing sparse matrix
* Risch algorithm: Translates indefinite integral to algebraic problem
[عدل] خوارزميات أنظمة التشغيل
* Banker's algorithm: Algorithm used for deadlock avoidance.
* Page replacement algorithms: Selecting the victim page under low memory conditions.
* Bully algorithm: Selecting new leader among many computers.
* rsync: Algorithm used to transmit files efficiently between two computers.
Disk scheduling algorithms:
* Elevator algorithm: Disk scheduling algorithm that works like an elevator.
* shortest seek first: Disk scheduling algorithm to reduce seek time.
Process synchronisation algorithms:
* Peterson's algorithm
* Lamport's Bakery algorithm
* Dekker's algorithm
Scheduling algorithms
* Rate-monotonic scheduling
* Earliest deadline first scheduling
* Fair-share scheduling
* Round-robin scheduling
* Multi level feedback queue
* shortest job next
* shortest remaining time
* Least slack time scheduling
* List scheduling
[عدل] رياضيات الاستمثال
* Ant colony optimization
* BFGS method: A nonlinear optimization algorithm
* Branch and bound
* Chain matrix multiplication
* Conjugate gradient
* Differential evolution
* Evolution strategy
* Gauss-Newton algorithm: An algorithm for solving nonlinear least squares problems.
* Genetic algorithms
* Gradient descent
* Levenberg-Marquardt algorithm: An algorithm for solving nonlinear least squares problems.
* Line search
* Local search
* Nelder-Mead method (downhill simplex method): A nonlinear optimization algorithm.
* Newton's method in optimization
* Particle swarm
* Random-restart hill climbing
* Simplex algorithm: An algorithm for solving the linear programming problem
* Simulated annealing
* Stochastic tunneling
* Subset sum algorithm
* Tabu search
[عدل] Parsing
* Recursive descent parser: A top-down parser suitable for LL(k) grammars
* LL parser: A relatively simple linear time parsing algorithm for a limited class of context-free grammars
* LR parser: A more complex linear time parsing algorithm for a larger class of context-free grammars. Variants:
o Operator-precedence parser
o SLR (Simple LR) parser
o LALR (Look-ahead LR) parser
o Canonical LR parser
* Packrat parser: A linear time parsing algorithm supporting some context-free grammars and parsing expression grammars
* CYK algorithm: An O(n3) algorithm for parsing any context-free grammar
* Earley's algorithm: Another O(n3) algorithm for parsing any context-free grammar
* GLR parser:An algorithm for parsing any context-free grammar from tomita. It is tuned for deterministic grammars, on which it performs almost linear time and O(n3) in worst case.
[عدل] خوارزميات كمومية
Application of quantum computation to various categories of problems and algorithms
* Grover's algorithm: provides quadratic speedup for many search problems
* Shor's algorithm: provides exponential speedup for factorizing a number
* Deutsch-Jozsa algorithm: criterion of balance for Boolean function
[عدل] هدسة البرمجيات
* Algorithms for Recovery and Isolation Exploiting Semantics: recovery
* Unicode Collation Algorithm
* CHS conversion: Converting between disk addressing systems
* Cyclic redundancy check: calculation of a check word
* Parity: Simple/fast error detection technique. Is a number even or odd?
[عدل] نظرية التحسيب و الأتمتة
* Powerset construction: Algorithm to convert nondeterministic automaton to deterministic automaton.
* Todd-Coxeter algorithm: Procedure for generating cosets.
[عدل] مواضيع أخرى
* خوارزمية فلكية
* Baum-Welch algorithm
* Bit manipulation algorithms: Create bit mask algorithm
* Doomsday algorithm: day of the week
* Schreier-Sims algorithm
* Viterbi algorithm
* Xor swap algorithm: swaps the values of two variables without using a buffer
* Luhn algorithm: a method of validating identification numbers
{{بوابة رياضيات}} [[تصنيف:خوارزميات|*]] [[تصنيف:قوائم رياضية|خوارزميات]]