אלגוריתם

אלגוריתם הוא דרך שיטתית וחד-משמעית לביצוע של משימה מסוימת, במספר סופי של צעדים. מקור המילה בהגייה לטינית משובשת של שם המתמטיקאי הפרסי בן המאה התשיעית, מוחמד אבן מוסא אל-ח'ואריזמי.

מתכון להכנת עוגה הוא דוגמה לאלגוריתם. בדרך-כלל משמש מונח זה לכינוי שיטת פתרון בעיות במתמטיקה או במדעי המחשב ובעיקר ביחס לנתונים תוויים כלשהם. כל תוכנית מחשב היא אלגוריתם, או אוסף של אלגוריתמים. בתיאור זה של האלגוריתמים יש עמימות מסוימת. כדי לפזר עמימות זו הגה טיורינג את "מכונת טיורינג", שהיא "מכונה" תאורטית המסוגלת, עקרונית, לבצע כל אלגוריתם. במקביל לטיורינג, הגו עוד מתמטיקאים ולוגיקנים הגדרות למושג האלגוריתם והתברר שכל ההגדרות שלהם היו שקולות זו לזו. לכן, היום אלגוריתם הוא מה שכל אחת מההגדרות האלה מתאר, ובפרט, מה שמכונת טיורינג מסוגלת לבצע.

קיימות משימות מוגדרות שלא קיים פתרון אלגוריתמי עבורן, וכבר טיורינג הוכיח זאת (ענף מדעי המחשב העוסק בסוגיה זו קרוי חישוביות). מצד שני, לביצועה של משימה מסוימת ייתכנו אלגוריתמים אחדים, מצב שמצדיק בחינה של יעילות האלגוריתמים, בהתאם למדדי יעילות נאותים. במסגרת מדעי המחשב נבחנת יעילותם של אלגוריתמים (בענף הקרוי סיבוכיות חישובית) על-פי הזמן והזיכרון הנדרשים לביצוע האלגוריתם כפונקציה של גודל הקלט לאלגוריתם. דהיינו: ככל שזמן הריצה של האלגוריתם ביחס לגודל הקלט קטן יותר, האלגוריתם ייחשב טוב יותר. מקובל להגדיר אלגוריתמים כ-"יעילים" אם זמן הריצה שלהם פולינומי בגודל הקלט שלהם.

תיאור ויזואלי של אלגוריתם ניתן באמצעות תרשים זרימה.

Other Languages
English: Algorithm
Afrikaans: Algoritme
Alemannisch: Algorithmus
አማርኛ: አልጎሪዝም
aragonés: Algorismo
العربية: خوارزمية
asturianu: Algoritmu
azərbaycanca: Alqoritm
تۆرکجه: القوریتم
башҡортса: Алгоритм
беларуская: Алгарытм
беларуская (тарашкевіца)‎: Альгарытм
български: Алгоритъм
bosanski: Algoritam
català: Algorisme
کوردی: ئەلگۆریتم
čeština: Algoritmus
Cymraeg: Algorithm
dansk: Algoritme
Deutsch: Algorithmus
Ελληνικά: Αλγόριθμος
Esperanto: Algoritmo
español: Algoritmo
eesti: Algoritm
euskara: Algoritmo
فارسی: الگوریتم
suomi: Algoritmi
føroyskt: Algoritma
français: Algorithme
Gaeilge: Algartam
galego: Algoritmo
हिन्दी: अल्गोरिद्म
hrvatski: Algoritam
magyar: Algoritmus
Հայերեն: Ալգորիթմ
interlingua: Algorithmo
Bahasa Indonesia: Algoritme
Ilokano: Algoritmo
íslenska: Reiknirit
italiano: Algoritmo
ქართული: ალგორითმი
Qaraqalpaqsha: Algoritm
Gĩkũyũ: Algorithm
қазақша: Алгоритм
한국어: 알고리즘
kurdî: Algorîtma
Кыргызча: Алгоритм
Latina: Algorithmus
Lëtzebuergesch: Algorithmus
lumbaart: Algoritm
lietuvių: Algoritmas
latviešu: Algoritms
олык марий: Алгоритм
македонски: Алгоритам
മലയാളം: അൽഗൊരിതം
монгол: Алгоритм
Bahasa Melayu: Algoritma
Mirandés: Algoritmo
नेपाली: अल्गोरिदम
नेपाल भाषा: अल्गोरिथम
Nederlands: Algoritme
norsk nynorsk: Algoritme
norsk: Algoritme
occitan: Algoritme
Oromoo: Seermurtoo
ਪੰਜਾਬੀ: ਕਲਨ ਵਿਧੀ
polski: Algorytm
پنجابی: الگورتھم
português: Algoritmo
română: Algoritm
русский: Алгоритм
русиньскый: Алґорітм
саха тыла: Алгоритм
sicilianu: Alguritmu
Scots: Algorithm
srpskohrvatski / српскохрватски: Algoritam
Simple English: Algorithm
slovenčina: Algoritmus
slovenščina: Algoritem
shqip: Algoritmi
српски / srpski: Алгоритам
Basa Sunda: Algoritma
svenska: Algoritm
తెలుగు: అల్గారిథం
тоҷикӣ: Алгоритм
Tagalog: Algoritmo
Türkçe: Algoritma
татарча/tatarça: Алгоритм
українська: Алгоритм
oʻzbekcha/ўзбекча: Algoritm
Tiếng Việt: Thuật toán
walon: Algorisse
Winaray: Algoritmo
ייִדיש: אלגאריטם
中文: 算法
Bân-lâm-gú: Ián-sǹg-hoat
粵語: 演算法