تُعرّف **الكفاءة الخوارزميّة** في علم الحاسوب على أنها إحدى خصائص الخوارزميات التي تتعلق بعدد الموارد الحاسوبية (الوقت، السرعة، الذاكرة..) التي تستخدمها الخوارزمية أثناء عملها، وهنا يجب أن يتم تحليل الخوارزمية لتحديد مدى استخدامها للموارد وتحديد كفاءتها.

للوصول إلى أعلى كفاءة؛ يجب تقليص الموارد المستخدمة إلى أقل حد ممكن. مع أن الموارد المختلفة (مثل الوقت والمساحة) لا يمكن تحليلها بشكل مباشر لمقارنة الخوارزميات المختلفة وتحديد أي منها أكثر كفاءة من الأخرى، حيث أن المقارنة تعتمد على أهمية المعيار الذي يقارن من خلاله. فمثلاً أن تكون الخوارزمية أكثر سرعة أو أن تستخدم اقل مساحة ممكنة من الذاكرة، أو أي معايير أدائية أخرى.

نظرة عامة
---------

تعتبر الخوارزمية ذات كفاءة إذا كان استخدامها للموارد أقل من "المستوى المقبول"، ويمكن القول أن المستوى المقبول يعني أن الخوارزمية سوف تستهلك كمّا معقولاً من الموارد. منذ 1950، شهدت الحواسيب تطورًا كبيرًا بالنسبة لكل من الطاقة الحاسوبية المتاحة وكمية الذاكرة المتاحة، لذلك فإن مستويات القبول الحالية لا يمكن مقارنتها مع المستويات المقبولة قبل 10 سنوات مثلاً.

هناك العديد من الموارد المستخدمة من قبل الحاسوب يمكن قياسها، أكثر اثنتين شائعتين هما **السرعة** و**استخدام الذاكرة**، عدا عن موارد أخرى يمكن أخذها بعين الاعتبار مثل سرعة النّقل ومدى استخدام الخوارزمية للذاكرة المؤقتة، واستهلاك الطاقة، ووقت الاستجابة.

العديد من هذه المعايير يعتمد على حجم المدخلات للخوارزمية -كمية البيانات التي سيتم معالجتها-، وأحيانا تعتمد على طريقة ترتيب البيانات حيث أن بعض خوارزميات الترتيب يكون أداؤها سيّئاً عندما تكون البيانات مرتّبة مسبقاً، أو التي تكون مرتبة بطريقة عكسية.

عملياً، هناك عوامل أخرى يمكن أن تتحكم بكفاءة الخوارزمية؛ مثلاً مدى دقتها وتلبيتها لمتطلبات عملها، كما سيُذكر لاحقًا، فإن طريقة تطبيق الخوارزمية سيكون لها تأثير كبير على الكفاءة الفعلية.

التحليل النظري
--------------

يمكن تحليل الخوارزمية نظريًا من خلال حساب تعقيد الخوارزمية باستخدام رمز O الكبير، حيث يرمز إلى مدى تعقيد الخوارزمية كاقتران مرتبط بحجم البيانات.

و يعتبر هذا المقياس دقيق بشكل معقول إذا كان حجم البيانات كبير، ولكن لا يمكن أخذه بعين الاعتبار على البيانات القليلة.

### مقياس استخدام الموارد

يُعّبر عادةً عن المقياس من خلال اقتران مرتبط بحجم البيانات n

أكثر مِقياسّين يُعتمد عليهما هما:

**1. الزمن**: مقدار الزمن الذي تستغرقه الخوارزمية لتنهي عملها.

**2. المساحة**: كمية الذاكرة (تحديداً الذاكرة العشوائية) التي تحتاجها الخوارزمية. والمساحة تُقسم إلى قسمين: حجم المساحة التي تحتاجها الشيفرة المصدرية للخوارزمية وحجم البيانات التي تعالجها الشيفرة.

#### الزمن

##### نظريًا

يُستخدم التعقيد الزمني لتحليل الوقت الذي تستخدمه الخوارزمية بالنسبة لكمية المدخلات.

النتيجة يمكن التعبير عنها بواسطة  رمز O الكبير. يمكن من خلال هذه العملية مقارنة الخوارزميات خاصة إذا كان لدينا كم كبير من البيانات لمعالجتها.

#### المساحة

كما هو الحال في التحليل الزمني، تُحللّ الخوارزمية من خلال **تعقيد المساحة** للحصول على تقدير المساحة التي تحتاجها الخوارزمية خلال وقت التشغيل، يعبر عن هذا الاقتران أيضاً بواسطة رمز O الكبير.

**هناك أربع جوانب لاستخدام الذاكرة يجب التنبه لها:**

1. حجم الذاكرة التي تحتاجها الشيفرة البرمجية للخوارزمية
2. حجم الذاكرة للبيانات المُدخلة
3. حجم الذاكرة للبيانات المخرجة (بعض الخوارزميات مثل خوارزميات الترتيب لا تحتاج إلى مخرجات)
4. حجم الذاكرة التي تحتاجها الخوارزمية للحسابات أثناء عملها.

الحواسيب الحالية تمتلك مساحة كبيرة من الذاكرة، لذلك تقليص حجم الخوارزمية ليتناسب مع حجم الذاكرة لم يعد مشكلة كبيرة نواجهها. لكن مع وجود ثلاث أنواع من الذاكرة فالأمر مختلف قليلاً:

1. الذاكرة المخبئية Cache Memory – وهذه تعمل بسرعة عالية جداً متناسبة مع وحدة المعالجة المركزية.
2. الذاكرة الفيزيائية الرئيسة، وهذه تعمل بسرعة أقل من سرعة وحدة المعالجة المركزية CPU..
3. الذاكرة الافتراضية – وهذه توحي للمستخدم بأن هناك مساحة كبيرة من الذاكرة، لكن أبطأ بآلاف المرات من الذاكرة العشوائية.

الخوارزمية التي تحتاج ذاكرة تتناسب مع مساحة الذاكرة المخبئية Cache Memory سيكون أداؤها أفضل بمراحل من الخوارزمية التي تحتاج إلى سعة الذاكرة الرئيسة، وبدورها ستكون أسرع بكثير من الخوارزمية التي تحتاج إلى الذاكرة الافتراضية.

مراجع
-----

1. ↑  "معلومات عن كفاءة خوارزمية على موقع d-nb.info". d-nb.info. مؤرشف من الأصل في 2020-07-29.

| * ع
* ن
* ت
علم الحاسوب |
| --- |
| يعتمد هذا القالب على تصنيف أنظمة الحوسبة  الذي أنجزته جمعية آلات الحوسبة في عام 2012 |
| العتاد | 
* اللوحات المطبوعة
* المُلحقات
* الدارات المُتكاملة
* التكامل بالغ مقاس الاتساع
* نظام على رقاقة
* الحوسبة الخضراء
* أتمتة التصميم الإلكتروني
* تسريع العتاد

 |
| بنية الأنظمة | 
* المعماريَّة
* الأنظمة المُضمَّنة
* الحوسبة في الزمن الحقيقي
* الاعتمادية

 |
| الشبكات | 
* المعماريَّة
* البروتوكولات
* العتاد
* الجدولة
* الأداء
* الخدمات

 |
| بنية البرمجيات | 
* المُفسِّرات
* برمجيات وسيطة
* آلة افتراضية
* أنظمة التشغيل
* جودة البرمجيات

 |
| نظرية لغات البرمجة وأدواتها | 
* الأنماط
* اللغات
	+ البرمجة
	+ النمذجة
	+ مخصصة النطاق
* المُحوِّلات
* أُطُر العمل
	+ بيئة التطوير المتكاملة
* المكتبات
* المُستودعات

 |
| تطوير البرمجيات | 
* المتغيرات
* عملية التطوير
* تحليل المتطلبات
* التصميم
* البناء
* النشر
* الصيانة
* فريق البرمجة
* البرمجيات حُرَّة المصدر

 |
| نظرية الحوسبة | 
* نموذج حوسبة
* لغة شكلية
* نظريات
	+ التشغيل الذاتي
	+ الحاسوبيَّة
	+ التعقيد الحسابي
* المنطق
* علم الدلالة الشكلي

 |
| الخوارزميات | 
* التحليل
* الكفاءة
* خوارزمية عشوائية
* هندسة مُحوسبة

 |
| رياضيات الحوسبة | 
* رياضيات مُتقطِّعة
* الاحتمالات
* الإحصاء
* برمجية رياضية
* نظرية المعلومات
* التحليل
	+ الرياضي
	+ العددي
* علم الحاسوب النظري

 |
| نظم المعلومات | 
* أنواع
	+ التخزين
		- قواعد البيانات
		- الوسائط المتعددة
	+ اقتصادية
	+ اجتماعية
	+ جغرافية
	+ دعم القرارات
	+ التحكُّم في العمليات
* تنقيب في البيانات
* مكتبة رقمية
* منصة حوسبة
* التسويق الرقمي
* شبكة عالمية المجال
* استرجاع المعلومات

 |
| الأمن | 
* أنواع
	+ العتاد
	+ الشبكات
	+ المعلومات
	+ التطبيقات
	+ الخدمات
* علم التعمية
* طريقة شكلية
* أنظمة كشف التسلسل

 |
| التفاعل الإنساني الحاسويبي | 
* حوسبة
	+ اجتماعية
	+ سائدة
* تصميم التفاعل
* تمثيل مرئي
* إمكانية الوصول

 |
| تزامن | 
* أنواع
	+ مُتزامِنة
	+ مُتوازيَّة
	+ مُوزَّعة
* تشعب مُتعدِّد
* مُعالَجة مُتعدِّدة

 |
| الذكاء الاصطناعي | 
* معالجة اللغة الطبيعية
* تمثيل المعرفة
* رؤية حاسوبية
* التخطيط الآلي والجدولة
* الاستمثال
* نظرية التَّحكُّم
* الفلسفة
* ذكاء اصطناعي مُوزَّع

 |
| تعلم الآلة | 
* أنواع التَّعلُّم
	+ مُراقَب
	+ غير مُراقَب
	+ مَدعُوم
	+ مُتعدِّد المهام
* التصديق المُتقاطِع

 |
| رسوميَّات | 
* التحريك
* الاستخلاص
* صور
	+ التَّلاعُب
	+ الضَّغط
* وحدة معالجة الرسوميَّات
* وُقُع
	+ افتراضي
	+ مُعزَّز
	+ مُختلَط
* نمذجة المُجسَّمات

 |
| الحوسبة التطبيقيَّة | 
* اختصاصات محوسبة
	+ رياضيات
	+ كيمياء
	+ فيزياء
	+ علم الأحياء
	+ هندسة
	+ العلوم الاجتماعية
* معلوماتية صحية
* التجارة الرقميَّة
* الفن الرقمي
* النشر الرقمي
* حرب رقمية عبر الشبكة
* التصويت الإلكتروني
* ألعاب الفيديو
* مُعالِجات النصوص
* بحوث العمليات
* تقنيات التعليم

 |
| 
* **تصنيف**
* **مُختصَر موجز**
* **مشروع**
* **كُومُنز**

 |

* أيقونة بوابةبوابة علم الحاسوب

|  |  |
| --- | --- |
| ضبط استنادي: وطنية عدلها في ويكي بيانات | 
* الملف الاستنادي المتكامِل (GND)

 |