Daftar algoritme: Perbedaan antara revisi
Tampilan
Konten dihapus Konten ditambahkan
Wagino Bot (bicara | kontrib) k →Referensi: Bot: Merapikan artikel, removed stub tag |
|||
(56 revisi perantara oleh 33 pengguna tidak ditampilkan) | |||
Baris 1: | Baris 1: | ||
{{terjemah|Inggris}} |
{{terjemah|Inggris}} |
||
Berikut adalah '''daftar [[ |
Berikut adalah '''daftar [[algoritme]]'''. |
||
''Lihat juga [[daftar struktur data]], [[daftar topik umum |
''Lihat juga [[daftar struktur data]], [[daftar topik umum algoritme]], dan [[daftar istilah yang berhubungan dengan algoritme dan struktur data]].'' |
||
== |
== Algoritme kombinatorial == |
||
=== |
=== Algoritme kombinatorial umum === |
||
* [[Algoritme pencari-siklus Floyd]]: iterasi untuk mencari siklus dalam barisan/sekuens |
|||
* [[Floyd's cycle-finding algorithm]]: finds cycles in iterations |
|||
* (uniformly distributed) [[Pseudorandom number generator]]s: |
* (uniformly distributed) [[Pseudorandom number generator]]s: |
||
** [[Blum Blum Shub]] |
** [[Blum Blum Shub]] |
||
** [[Mersenne twister]] |
** [[Mersenne twister]] |
||
* [[Robinson-Schensted algorithm]]: |
* [[Robinson-Schensted algorithm]]: korespondensi dan pasangan yang bijetif dari [[Young tableaux]] yang standar |
||
=== |
=== Algoritme graf === |
||
{{utama|Teori |
{{utama|Teori graf}} |
||
* [[ |
* [[Algoritme Bellman-Ford]]: menghitung [[jarak terpendek]] pada graf berbobot, di mana sisi bisa memiliki bobot negatif |
||
* [[ |
* [[Algoritme Dijkstra]]: menghitung [[jarak terpendek]] pada graf berbobot, tanpa sisi berbobot negatif. |
||
* [[ |
* [[Algoritme Floyd-Warshall]]: menghitung solusi jarak terpendek untuk semua pasang titik pada sebuah graf berarah dan berbobot |
||
* [[ |
* [[Algoritme Kruskal]]: mencari [[pohon rentang minimum]] pada sebuah graf |
||
* [[ |
* [[Algoritme Prim]]: mencari [[pohon rentang minimum]] pada sebuah graf |
||
* [[ |
* [[Algoritme Boruvka]]: mencari [[pohon rentang minimum]] pada sebuah graf |
||
* [[ |
* [[Algoritme Ford-Fulkerson]]: menghitung [[maximum flow problem|aliran maksimal]] di dalam graf |
||
* [[ |
* [[Algoritme Edmonds-Karp]]: implementasi dari Ford-Fulkerson |
||
* [[Nonblocking Minimal Spanning Switch]] say, for a [[telephone exchange]] |
* [[Nonblocking Minimal Spanning Switch]] say, for a [[telephone exchange]] |
||
* [[Spring based algorithm]]: |
* [[Spring based algorithm]]: algoritme untuk [[graph drawing|penggambaran draf]] |
||
* [[Topological sorting|Topological sort]] |
* [[Topological sorting|Topological sort]] |
||
* [[ |
* [[Algoritme Hungaria]]: algorithm for finding a perfect [[matching]] |
||
===[[ |
=== [[Algoritme pencarian]] === |
||
* [[Pencarian linear]]: mencari sebuah item pada sebuah list tak berurut |
* [[Pencarian linear]]: mencari sebuah item pada sebuah list tak berurut |
||
* [[ |
* [[Algoritme seleksi]]: mencari item ke-''k'' pada sebuah list |
||
* [[Pencarian |
* [[Pencarian biner]]: menemukan sebuah item pada sebuah list terurut |
||
* [[Pohon Pencarian Biner]] |
* [[Pohon Pencarian Biner]] |
||
* [[Pencarian Breadth-first]]: menelusuri sebuah graf tingkatan demi tingkatan |
* [[Pencarian Breadth-first]]: menelusuri sebuah graf tingkatan demi tingkatan |
||
* [[Pencarian Depth-first]]: menelusuri sebuah graf cabang demi cabang |
* [[Pencarian Depth-first]]: menelusuri sebuah graf cabang demi cabang |
||
* [[Pencarian Best-first]]: menelusuri sebuah graf dengan urutan sesuai kepentingan dengan menggunakan [[antrian prioritas]] |
* [[Pencarian Best-first]]: menelusuri sebuah graf dengan urutan sesuai kepentingan dengan menggunakan [[antrian prioritas]] |
||
* [[ |
* [[Algoritme Pencarian A Bintang|Pencarian pohon A*]]: kasus khusus dari pencarian best-first |
||
* [[Pencarian Interpolasi|Pencarian Prediktif]]: pencarian mirip biner dengan faktor pada [[magnitudo (matematika)|magnitudo]] dari syarat pencarian terhadap nilai atas dan bawah dalam pencarian. Kadang-kadang disebut pencarian kamus atau pencarian interpolasi. |
* [[Pencarian Interpolasi|Pencarian Prediktif]]: pencarian mirip biner dengan faktor pada [[magnitudo (matematika)|magnitudo]] dari syarat pencarian terhadap nilai atas dan bawah dalam pencarian. Kadang-kadang disebut pencarian kamus atau pencarian interpolasi. |
||
* [[Tabel Hash]]: mencari sebuah item dalam sebuah kumpulan tak berurut dalam waktu O(1). |
* [[Tabel Hash]]: mencari sebuah item dalam sebuah kumpulan tak berurut dalam waktu O(1). |
||
=== |
=== Algoritme string === |
||
====[[ |
==== [[Algoritme pencarian string|Pencarian]] ==== |
||
* [[Algoritme pencarian string#Algoritme brute force dalam pencarian string|Algoritme brute force]] |
|||
*[[Algoritma Aho-Corasick]] |
|||
*[[ |
* [[Algoritme Aho-Corasick]] |
||
*[[Boyer-Moore |
* [[Algoritme Boyer-Moore]] |
||
*[[Knuth-Morris-Pratt |
* [[Algoritme Knuth-Morris-Pratt]] |
||
* [[Algoritme Karp-Rabin]] |
|||
*[[Rabin-Karp string search algorithm]] |
|||
==== |
==== Pencocokan string ==== |
||
* [[Algoritme Bitap]] |
|||
*[[Levenshtein_distance|Levenshtein edit distance]] |
|||
* [[Algoritme Fonetik]] |
|||
** [[Metaphone]] |
|||
** [[Soundex]] |
|||
* [[Metrik kemiripan string]] |
|||
** [[Jarak Damerau–Levenshtein]] |
|||
** [[Jarak Hamming]] |
|||
** [[Jarak Jaro-Winkler]] |
|||
** [[Jarak Levenshtein]] |
|||
===[[ |
=== [[Algoritme penyusunan]] === |
||
* [[Binary search tree|Binary tree sort]] |
* [[Binary search tree|Binary tree sort]] |
||
* [[Bogosort]] |
* [[Bogosort]] |
||
* [[Bubble sort]]: |
* [[Bubble sort]]: untik setiap pasangan, tukar item tersebut |
||
* [[Bucket sort]] |
* [[Bucket sort]] |
||
* [[Comb sort]] |
* [[Comb sort]] |
||
Baris 64: | Baris 72: | ||
* [[Counting sort]] |
* [[Counting sort]] |
||
* [[Gnome sort]] |
* [[Gnome sort]] |
||
* [[Heapsort]]: |
* [[Heapsort]]: mengubah list menjadi heap, lalu pindah yang terbesar kepada daftar. |
||
* [[Insertion sort]]: |
* [[Insertion sort]]: menentukan dimana item tertentu termasuk dalam list yang ter-urut, dan menyisipkan padanya |
||
* [[Merge sort]]: pisah daftar menjadi pasangan dua-dua, urutkan lalu digabung dengan satu pasangan lainnya, kembali diurutkan, dan diulang hingga menjadi daftar utuh |
|||
* [[Merge sort]]: sort the first and second half of the list separately, then merge the sorted lists |
|||
* [[Pancake sorting]] |
* [[Pancake sorting]] |
||
* [[Pigeonhole sort]] |
* [[Pigeonhole sort]] |
||
* [[Quicksort]]: pisah daftar menjadi dua daftar, yang satu lebih rendah yang satu lebih besar, dan urut terpisah. |
|||
* [[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 |
* [[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 |
* [[Selection sort]]: pick the smallest of the remaining elements, add it to the end of the sorted list |
||
Baris 77: | Baris 85: | ||
* [[Topological sorting|Topological sort]] |
* [[Topological sorting|Topological sort]] |
||
== [[Kompresi data]] == |
|||
==[[Data compression|Compression algorithms]]== |
|||
=== [[Kompresi data tanpa kehilangan]] === |
|||
===[[:Category:Lossless compression algorithms|Lossless compression algorithms]]=== |
|||
* [[Burrows-Wheeler transform]]: preprocessing useful for improving lossless compression |
* [[Burrows-Wheeler transform]]: preprocessing useful for improving lossless compression |
||
Baris 85: | Baris 93: | ||
* [[Delta encoding]]: aid to compression of data in which sequential data occurs frequently |
* [[Delta encoding]]: aid to compression of data in which sequential data occurs frequently |
||
* [[Incremental encoding]]: delta encoding applied to sequences of strings |
* [[Incremental encoding]]: delta encoding applied to sequences of strings |
||
* [[LZW]]: |
* [[LZW]]: singkatan dari (Lempel-Ziv-Welch) |
||
* [[LZ77 (algorithm)]]: LZ77 and LZ78 are the names for the two lossless data compression algorithms |
* [[LZ77 (algorithm)]]: LZ77 and LZ78 are the names for the two lossless data compression algorithms |
||
* [[LZMA]]: |
* [[LZMA]]: singkatan dari Lempel-Ziv-Markov chain-Algorithm |
||
* [[LZO]]: data |
* [[LZO]]: pemadatan data yang cepat |
||
* [[PPM compression algorithm]] |
* [[PPM compression algorithm]] |
||
* [[Shannon-Fano coding]] |
* [[Shannon-Fano coding]] |
||
* [[Truncated binary encoding]] |
* [[Truncated binary encoding]] |
||
* [[Run-length encoding]]: |
* [[Run-length encoding]]: pemadatan data yang menggunakan deretan huruf yang berulang. |
||
* [[SEQUITUR algorithm]]: lossless compression by incremental grammar inference on a string |
* [[SEQUITUR algorithm]]: lossless compression by incremental grammar inference on a string |
||
* [[Embedded Zerotree Wavelet|EZW (Embedded Zerotree Wavelet)]] |
* [[Embedded Zerotree Wavelet|EZW (Embedded Zerotree Wavelet)]] |
||
Baris 107: | Baris 115: | ||
** [[Rice coding]]: form of entropy coding that is optimal for alphabets following geometric distributions |
** [[Rice coding]]: form of entropy coding that is optimal for alphabets following geometric distributions |
||
=== [[Kompresi data berkehilangan]] === |
|||
===[[:Category:Lossy compression algorithms|Lossy compression algorithms]]=== |
|||
* [[Linear predictive coding]]: lossy compression by representing the spectral envelope of a digital signal of speech in compressed form |
* [[Linear predictive coding]]: lossy compression by representing the spectral envelope of a digital signal of speech in compressed form |
||
Baris 117: | Baris 125: | ||
* [[Wavelet compression]]: form of data compression well suited for image compression (sometimes also video compression and audio compression) |
* [[Wavelet compression]]: form of data compression well suited for image compression (sometimes also video compression and audio compression) |
||
==[[Computational geometry]]== |
== [[Computational geometry]] == |
||
* [[Gift wrapping algorithm]]: determining the [[convex hull]] of a [[set]] of points |
* [[Gift wrapping algorithm]]: determining the [[convex hull]] of a [[set]] of points |
||
Baris 123: | Baris 131: | ||
* [[Point in polygon]]: tests whether a given point lies within a given polygon |
* [[Point in polygon]]: tests whether a given point lies within a given polygon |
||
==[[Grafik komputer]]== |
== [[Grafik komputer]] == |
||
* [[Bresenham's line algorithm]]: plots points of a 2-dimensional array to form a straight line between 2 specified points (uses decision variables) |
* [[Bresenham's line algorithm]]: plots points of a 2-dimensional array to form a straight line between 2 specified points (uses decision variables) |
||
Baris 131: | Baris 139: | ||
* [[Ray tracing]]: realistic image [[rendering (computer graphics)|rendering]] |
* [[Ray tracing]]: realistic image [[rendering (computer graphics)|rendering]] |
||
== |
== Algoritme [[Kriptografi]] == |
||
''Lihat juga [[Topik dalam kriptografi]]'' |
''Lihat juga [[Topik dalam kriptografi]]'' |
||
* [[Enkripsi simetris]] dengan kata kunci: |
|||
* [[symmetric key algorithm|Symmetric (secret key) encryption]]: |
|||
** [[Advanced Encryption Standard]] (AES), |
** [[Advanced Encryption Standard]] (AES), pemenang kompetisi [[National Institute of Standards and Technology|NIST]] pada tahun 2000 |
||
** [[Blowfish (cipher)|Blowfish]] |
** [[Blowfish (cipher)|Blowfish]] |
||
** [[Data Encryption Standard]] (DES), |
** [[Data Encryption Standard]] (DES), pemenang kompetisi [[National Institute of Standards and Technology|NBS]] (sekarang NIST), telah digantikan dengan AES. |
||
** [[International Data Encryption Algorithm|IDEA]] |
** [[International Data Encryption Algorithm|IDEA]] |
||
** [[RC4 (cipher)]] |
** [[RC4 (cipher)]] |
||
* [[Enkripsi asimetris]] dengan kunci publik atau [[tanda tangan digital]]: |
|||
* [[Asymmetric key algorithm|Asymmetric (public key) encryption]] or [[digital signature]]: |
|||
** [[Digital Signature Algorithm|DSA]] |
** [[Digital Signature Algorithm|DSA]] |
||
** [[ElGamal encryption|ElGamal]] |
** [[ElGamal encryption|ElGamal]] |
||
Baris 147: | Baris 155: | ||
** [[NTRUEncrypt]] |
** [[NTRUEncrypt]] |
||
* Cryptographic [[Message digest]] functions: |
* Cryptographic [[Message digest]] functions: |
||
** [[MD5]] – Sekarang ini sudah terdapat algoritme yang mampu memalsukan jumlah MD5.<ref>[http://www.mscs.dal.ca/~selinger/md5collision/ Presentasi pemalsuan jumlah MD5]</ref> |
|||
** [[MD5]] – Note that there is now a method of generating collisions for MD5 |
|||
** [[RIPEMD-160]] |
** [[RIPEMD-160]] |
||
** [[SHA-1]] |
** [[SHA-1]] |
||
** [[keyed-hash message authentication code|HMAC]]: keyed-hash message authentication |
** [[keyed-hash message authentication code|HMAC]]: keyed-hash message authentication |
||
* [[Cryptographically secure pseudo-random number generator |
* [[Perhitungan nomor acak tentu yang aman untuk persandian]] (Cryptographically secure pseudo-random number generator) |
||
** [[Blum Blum Shub]] - |
** [[Blum Blum Shub]] - berdasarkan [[faktorisasi prima]]. |
||
** [[Yarrow algorithm]] |
** [[Yarrow algorithm]] |
||
** [[Fortuna (PRNG)|Fortuna]], allegedly an improvement on Yarrow |
** [[Fortuna (PRNG)|Fortuna]], allegedly an improvement on Yarrow |
||
Baris 158: | Baris 166: | ||
** [[Diffie-Hellman]]: key exchange |
** [[Diffie-Hellman]]: key exchange |
||
== |
== Algoritme [[Distributed systems]] == |
||
* [[Lamport ordering]]: a [[partial order]]ing of events based on the ''happened-before'' relation |
* [[Lamport ordering]]: a [[partial order]]ing of events based on the ''happened-before'' relation |
||
* [[Snapshot algorithm]]: a snapshot is the process of recording the global state of a system |
* [[Snapshot algorithm]]: a snapshot is the process of recording the global state of a system |
||
* [[Vector ordering]]: a [[total order]]ing of events |
* [[Vector ordering]]: a [[total order]]ing of events |
||
== |
== Algoritme Numerik == |
||
''See also main article ''[[numerical analysis]]'' and [[list of numerical analysis topics]]'' |
''See also main article ''[[numerical analysis]]'' and [[list of numerical analysis topics]]'' |
||
* [[ |
* [[Algoritme De Boor]]: computes [[Spline (mathematics)|splines]]. |
||
* [[ |
* [[Algoritme de Casteljau]]: melakukan perhitungan [[kurva Bézier]] |
||
* [[False position method]]: approximates roots of a function |
* [[False position method]]: approximates roots of a function |
||
* [[Gauss-Jordan |
* [[Eliminasi Gauss-Jordan]]: menyelesaikan sistem persamaan linear |
||
* [[ |
* [[Algoritme Gauss-Legendre]]: computes the digits of [[pi]] |
||
* [[Gauss-Newton algorithm]]: find minimum of function of several variables |
* [[Gauss-Newton algorithm]]: find minimum of function of several variables |
||
* [[Penambahan Kahan]]: menambahkan bilangan-bilangan titik mengambang dengan ketelitian lebih |
|||
* [[Kahan summation algorithm]]: a more accurate method of summing floating-point numbers |
|||
* [[Levenberg-Marquardt algorithm]]: find minimum of function of several variables |
* [[Levenberg-Marquardt algorithm]]: find minimum of function of several variables |
||
* [[MISER algorithm]]: Monte Carlo simulation, [[numerical integration]] |
* [[MISER algorithm]]: Monte Carlo simulation, [[numerical integration]] |
||
* [[Newton's method]]: finds zeros of functions with [[calculus]] |
* [[Newton's method]]: finds zeros of functions with [[calculus]] |
||
* [[Bracketing Methods]]: |
|||
* [[Rounding functions]]: the classic ways to round numbers |
|||
* [[Pembulatan]]: membulatkan bilangan pecah |
|||
* [[Secant method]]: approximates roots of a function |
* [[Secant method]]: approximates roots of a function |
||
* [[Shifting nth-root algorithm]]: digit by digit root extraction |
* [[Shifting nth-root algorithm]]: digit by digit root extraction |
||
* [[Akar persegi]]: menghitungkan akar persegi dengan ketelitian terbatas |
|||
* [[Square root]]: approximates the square root of a number |
|||
* [[Strassen algorithm]] |
* [[Strassen algorithm]] |
||
===[[Optimization (mathematics)|Optimization algorithms]]=== |
=== [[Optimization (mathematics)|Optimization algorithms]] === |
||
* [[Simplex algorithm]]: An algorithm for solving the [[linear programming]] problem |
* [[Simplex algorithm]]: An algorithm for solving the [[linear programming]] problem |
||
Baris 195: | Baris 204: | ||
* [[CORDIC]]: Fast [[trigonometric function]] computation technique. |
* [[CORDIC]]: Fast [[trigonometric function]] computation technique. |
||
* [[Fast Fourier transform]]: determines the frequencies contained in a (segment of a) signal |
* [[Fast Fourier transform]]: determines the frequencies contained in a (segment of a) signal |
||
**[[Cooley-Tukey FFT algorithm]] |
** [[Cooley-Tukey FFT algorithm]] |
||
* [[Rainflow-counting algorithm]]: Reduces a complex [[stress (physics)|stress]] history to a count of elementary stress-reversals for use in [[fatigue (material)|fatigue]] analysis |
* [[Rainflow-counting algorithm]]: Reduces a complex [[stress (physics)|stress]] history to a count of elementary stress-reversals for use in [[fatigue (material)|fatigue]] analysis |
||
* [[Osem]]: algorithm for processing of medical images |
* [[Osem]]: algorithm for processing of medical images |
||
* [[Goertzel algorithm]] Can be used for [[DTMF]] digit decoding. |
* [[Goertzel algorithm]] Can be used for [[Persinyalan nada ganda multifrekuensi|DTMF]] digit decoding. |
||
* [[Discrete Fourier transform]] |
* [[Discrete Fourier transform<ref>frequency domain ICA</ref>** [[Rader's FFT algorithm]] |
||
** [[Rader's FFT algorithm]] |
|||
** [[Bluestein's FFT algorithm]] |
** [[Bluestein's FFT algorithm]] |
||
Baris 210: | Baris 218: | ||
** [[Index calculus algorithm]] |
** [[Index calculus algorithm]] |
||
* [[Euclidean algorithm]]: computes the [[greatest common divisor]] |
* [[Euclidean algorithm]]: computes the [[greatest common divisor]] |
||
* [[Faktorisasi prima]]: pemecahan bilangan bulat menjadi faktor [[Bilangan prima|prima]]. |
|||
* [[Integer factorization]]: breaking an integer into its [[prime number|prime]] factors |
|||
** [[Trial division]] |
** [[Trial division]] |
||
** [[ |
** [[Faktorisasi kurva eliptik Lenstra]] |
||
** [[Pollard's rho algorithm]] |
** [[Pollard's rho algorithm]] |
||
** [[Pollard's p-1 algorithm]] |
** [[Pollard's p-1 algorithm]] |
||
Baris 218: | Baris 226: | ||
** [[Quadratic sieve]] |
** [[Quadratic sieve]] |
||
** [[Special number field sieve]] |
** [[Special number field sieve]] |
||
** [[General number field sieve]] |
** [[General number field sieve]] |
||
** [[Jones's period proxy algorithm]] |
** [[Jones's period proxy algorithm]] |
||
* [[Algoritme perkalian]]: cara perkalian dua bilangan yang cepat. |
|||
* [[Multiplication algorithm]]s: fast multiplication of two numbers |
|||
* [[Ujian bilangan prima]]: menentukan apakah suatu bilangan adalah [[bilangan prima]]. |
|||
* [[Primality test]]s: determining whether a given number is [[prime number|prime]] |
|||
** [[AKS primality test]] |
** [[AKS primality test]] |
||
** [[Miller-Rabin primality test]] |
** [[Miller-Rabin primality test]] |
||
Baris 240: | Baris 248: | ||
* [[Recursive descent parser]]: A [[top-down parser]] suitable for LL(''k'') grammars |
* [[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 grammar]]s |
* [[LL parser]]: A relatively simple [[linear time]] parsing algorithm for a limited class of [[context-free grammar]]s |
||
* [[LR parser]]: A more complex [[linear time]] parsing algorithm for a larger class of [[context-free grammar]]s. |
* [[LR parser]]: A more complex [[linear time]] parsing algorithm for a larger class of [[context-free grammar]]s. Variants: |
||
** [[Operator-precedence parser]] |
** [[Operator-precedence parser]] |
||
** [[Simple LR parser|SLR (Simple LR) parser]] |
** [[Simple LR parser|SLR (Simple LR) parser]] |
||
Baris 257: | Baris 265: | ||
* [[Diff]]: compare two sequences. An example of [[Dynamic programming]] (dynamic refers to the property that the optimal solution can be constructed by combining optimal solutions to sub-problems e.g. quicksort). |
* [[Diff]]: compare two sequences. An example of [[Dynamic programming]] (dynamic refers to the property that the optimal solution can be constructed by combining optimal solutions to sub-problems e.g. quicksort). |
||
==[[Komputer kuantum| |
== [[Komputer kuantum|Algoritme kuantum]] == |
||
''<small>Application of [[quantum computation]] to various categories of problems and algorithms</small>'' |
''<small>Application of [[quantum computation]] to various categories of problems and algorithms</small>'' |
||
Baris 264: | Baris 272: | ||
* [[Deutsch-Jozsa algorithm]]: criterion of balance for Boolean function |
* [[Deutsch-Jozsa algorithm]]: criterion of balance for Boolean function |
||
== |
== Algoritme medis == |
||
* [[Medical algorithm]] |
* [[Medical algorithm]] |
||
Baris 270: | Baris 278: | ||
== Lainnya == |
== Lainnya == |
||
*[[Astronomical algorithm]]s |
* [[Astronomical algorithm]]s |
||
*[[Banker's algorithm]] |
* [[Banker's algorithm]] |
||
*[[Baum-Welch |
* [[Algoritme Baum-Welch]] |
||
*[[Doomsday algorithm]]: day of the week |
* [[Doomsday algorithm]]: day of the week |
||
*[[Levenberg-Marquardt nonlinear least squares fitting algorithm]] |
* [[Levenberg-Marquardt nonlinear least squares fitting algorithm]] |
||
*[[Marzullo's algorithm]]: distributed clock synchronization |
* [[Marzullo's algorithm]]: distributed clock synchronization |
||
*[[Page replacement algorithms]] |
* [[Page replacement algorithms]] |
||
*[[Risch algorithm]] |
* [[Risch algorithm]] |
||
*[[Schreier-Sims algorithm]] |
* [[Schreier-Sims algorithm]] |
||
*[[Todd-Coxeter algorithm]] |
* [[Todd-Coxeter algorithm]] |
||
*[[Viterbi algorithm]] |
* [[Viterbi algorithm]] |
||
* [[Penukaran XOR]]: menukar nilainya dua variabel tanpa menggunakan variabel sementara |
|||
*[[Xor swap algorithm]]: swaps the values of two variables without using a buffer |
|||
* [[Algoritme merge]] |
|||
* [[Algoritme penggantian halaman]] |
|||
== Referensi == |
|||
{{komputer-stub}} |
|||
<references /> |
|||
[[ |
[[Kategori:Algoritme| ]] |
||
[[ |
[[Kategori:Daftar bertopik matematika|Algoritme]] |
||
[[de:Liste von Algorithmen]] |
|||
[[en:List of algorithms]] |
|||
[[pt:Lista de algoritmos]] |
|||
[[ru:Список алгоритмов]] |
Revisi terkini sejak 24 Desember 2023 04.18
Artikel ini perlu diterjemahkan dari bahasa Inggris ke bahasa Indonesia. |
Berikut adalah daftar algoritme.
Lihat juga daftar struktur data, daftar topik umum algoritme, dan daftar istilah yang berhubungan dengan algoritme dan struktur data.
Algoritme kombinatorial
[sunting | sunting sumber]Algoritme kombinatorial umum
[sunting | sunting sumber]- Algoritme pencari-siklus Floyd: iterasi untuk mencari siklus dalam barisan/sekuens
- (uniformly distributed) Pseudorandom number generators:
- Robinson-Schensted algorithm: korespondensi dan pasangan yang bijetif dari Young tableaux yang standar
Algoritme graf
[sunting | sunting sumber]- Algoritme Bellman-Ford: menghitung jarak terpendek pada graf berbobot, di mana sisi bisa memiliki bobot negatif
- Algoritme Dijkstra: menghitung jarak terpendek pada graf berbobot, tanpa sisi berbobot negatif.
- Algoritme Floyd-Warshall: menghitung solusi jarak terpendek untuk semua pasang titik pada sebuah graf berarah dan berbobot
- Algoritme Kruskal: mencari pohon rentang minimum pada sebuah graf
- Algoritme Prim: mencari pohon rentang minimum pada sebuah graf
- Algoritme Boruvka: mencari pohon rentang minimum pada sebuah graf
- Algoritme Ford-Fulkerson: menghitung aliran maksimal di dalam graf
- Algoritme Edmonds-Karp: implementasi dari Ford-Fulkerson
- Nonblocking Minimal Spanning Switch say, for a telephone exchange
- Spring based algorithm: algoritme untuk penggambaran draf
- Topological sort
- Algoritme Hungaria: algorithm for finding a perfect matching
- Pencarian linear: mencari sebuah item pada sebuah list tak berurut
- Algoritme seleksi: mencari item ke-k pada sebuah list
- Pencarian biner: menemukan sebuah item pada sebuah list terurut
- Pohon Pencarian Biner
- Pencarian Breadth-first: menelusuri sebuah graf tingkatan demi tingkatan
- Pencarian Depth-first: menelusuri sebuah graf cabang demi cabang
- Pencarian Best-first: menelusuri sebuah graf dengan urutan sesuai kepentingan dengan menggunakan antrian prioritas
- Pencarian pohon A*: kasus khusus dari pencarian best-first
- Pencarian Prediktif: pencarian mirip biner dengan faktor pada magnitudo dari syarat pencarian terhadap nilai atas dan bawah dalam pencarian. Kadang-kadang disebut pencarian kamus atau pencarian interpolasi.
- Tabel Hash: mencari sebuah item dalam sebuah kumpulan tak berurut dalam waktu O(1).
Algoritme string
[sunting | sunting sumber]- Algoritme brute force
- Algoritme Aho-Corasick
- Algoritme Boyer-Moore
- Algoritme Knuth-Morris-Pratt
- Algoritme Karp-Rabin
Pencocokan string
[sunting | sunting sumber]- Binary tree sort
- Bogosort
- Bubble sort: untik setiap pasangan, tukar item tersebut
- Bucket sort
- Comb sort
- Cocktail sort
- Counting sort
- Gnome sort
- Heapsort: mengubah list menjadi heap, lalu pindah yang terbesar kepada daftar.
- Insertion sort: menentukan dimana item tertentu termasuk dalam list yang ter-urut, dan menyisipkan padanya
- Merge sort: pisah daftar menjadi pasangan dua-dua, urutkan lalu digabung dengan satu pasangan lainnya, kembali diurutkan, dan diulang hingga menjadi daftar utuh
- Pancake sorting
- Pigeonhole sort
- Quicksort: pisah daftar menjadi dua daftar, yang satu lebih rendah yang satu lebih besar, dan urut terpisah.
- 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
- Stupid sort
- Topological sort
- 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: singkatan dari (Lempel-Ziv-Welch)
- LZ77 (algorithm): LZ77 and LZ78 are the names for the two lossless data compression algorithms
- LZMA: singkatan dari Lempel-Ziv-Markov chain-Algorithm
- LZO: pemadatan data yang cepat
- PPM compression algorithm
- Shannon-Fano coding
- Truncated binary encoding
- Run-length encoding: pemadatan data yang menggunakan deretan huruf yang berulang.
- 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
- Huffman coding: simple lossless compression taking advantage of relative character frequencies
- Adaptive Huffman coding: adaptive coding technique based on Huffman coding
- Arithmetic coding: advanced entropy coding
- Range encoding: data compression method that is believed to approach the compression ratio of arithmetic coding
- Huffman coding: simple lossless compression taking advantage of relative character frequencies
- Entropy coding with known entropy characteristics
- Unary coding: code that represents a number n with n ones followed by a zero
- Elias delta|gamma|omega coding: universal code encoding the positive integers
- Fibonacci coding: universal code which encodes positive integers into binary code words
- Golomb coding: form of entropy coding that is optimal for alphabets following geometric distributions
- Rice coding: form of entropy coding that is optimal for alphabets following geometric distributions
- 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)
- Gift wrapping algorithm: determining the convex hull of a set of points
- 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)
- 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
- Painter's algorithm: detects visible parts of a 3-dimensional scenery
- Ray tracing: realistic image rendering
Algoritme Kriptografi
[sunting | sunting sumber]Lihat juga Topik dalam kriptografi
- Enkripsi simetris dengan kata kunci:
- Advanced Encryption Standard (AES), pemenang kompetisi NIST pada tahun 2000
- Blowfish
- Data Encryption Standard (DES), pemenang kompetisi NBS (sekarang NIST), telah digantikan dengan AES.
- IDEA
- RC4 (cipher)
- Enkripsi asimetris dengan kunci publik atau tanda tangan digital:
- Cryptographic Message digest functions:
- MD5 – Sekarang ini sudah terdapat algoritme yang mampu memalsukan jumlah MD5.[1]
- RIPEMD-160
- SHA-1
- HMAC: keyed-hash message authentication
- Perhitungan nomor acak tentu yang aman untuk persandian (Cryptographically secure pseudo-random number generator)
- Blum Blum Shub - berdasarkan faktorisasi prima.
- Yarrow algorithm
- Fortuna, allegedly an improvement on Yarrow
- Other
- Diffie-Hellman: key exchange
Algoritme Distributed systems
[sunting | sunting sumber]- 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 ordering: a total ordering of events
Algoritme Numerik
[sunting | sunting sumber]See also main article numerical analysis and list of numerical analysis topics
- Algoritme De Boor: computes splines.
- Algoritme de Casteljau: melakukan perhitungan kurva Bézier
- False position method: approximates roots of a function
- Eliminasi Gauss-Jordan: menyelesaikan sistem persamaan linear
- Algoritme Gauss-Legendre: computes the digits of pi
- Gauss-Newton algorithm: find minimum of function of several variables
- Penambahan Kahan: menambahkan bilangan-bilangan titik mengambang dengan ketelitian lebih
- Levenberg-Marquardt algorithm: find minimum of function of several variables
- MISER algorithm: Monte Carlo simulation, numerical integration
- Newton's method: finds zeros of functions with calculus
- Bracketing Methods:
- Pembulatan: membulatkan bilangan pecah
- Secant method: approximates roots of a function
- Shifting nth-root algorithm: digit by digit root extraction
- Akar persegi: menghitungkan akar persegi dengan ketelitian terbatas
- Strassen algorithm
- Simplex algorithm: An algorithm for solving the linear programming problem
- Branch and bound
- Simulated annealing
- Genetic algorithms
- Particle swarm
- Tabu search
- Local search
- CORDIC: Fast trigonometric function computation technique.
- Fast Fourier transform: determines the frequencies contained in a (segment of a) signal
- 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[2]** Rader's FFT algorithm
Number theoretic algorithms
[sunting | sunting sumber]- Discrete logarithm:
- Euclidean algorithm: computes the greatest common divisor
- Faktorisasi prima: pemecahan bilangan bulat menjadi faktor prima.
- Algoritme perkalian: cara perkalian dua bilangan yang cepat.
- Ujian bilangan prima: menentukan apakah suatu bilangan adalah bilangan prima.
- 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
- 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:
- 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
- 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?
- Diff: compare two sequences. An example of Dynamic programming (dynamic refers to the property that the optimal solution can be constructed by combining optimal solutions to sub-problems e.g. quicksort).
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
Algoritme medis
[sunting | sunting sumber]Lainnya
[sunting | sunting sumber]- Astronomical algorithms
- Banker's algorithm
- Algoritme Baum-Welch
- Doomsday algorithm: day of the week
- Levenberg-Marquardt nonlinear least squares fitting algorithm
- Marzullo's algorithm: distributed clock synchronization
- Page replacement algorithms
- Risch algorithm
- Schreier-Sims algorithm
- Todd-Coxeter algorithm
- Viterbi algorithm
- Penukaran XOR: menukar nilainya dua variabel tanpa menggunakan variabel sementara
- Algoritme merge
- Algoritme penggantian halaman
Referensi
[sunting | sunting sumber]- ^ Presentasi pemalsuan jumlah MD5
- ^ frequency domain ICA