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

مثال
خوارزمية حساب العمر.
السنة الحالية – سنة الميلاد = العمر
2021 – 2001 = 20

مثال آخر .
أحمد يريد الذهاب إلى المتحف.
الطرق المقترحة (الخوارزميات).
1 – استئجار سيارة أجرة
2 – إستخدام المواصلات العامة

من أجل تحديد أفضل طريقة للذهاب إلى المتحف من بين الطرق فوق يجب فهم نقطتين أساسيتين
1 – الوقت ( حساب الوقت المستغرق في الوصول إلى المتحف )

2 – التكلفة المادية لكل طريقه

⭕ – سيارة الأجرة مكلف جدا لكن بوقت أقل

⭕ – المواصلات العامة أقل في التكلفة لكن الوقت أكثر من سيارة أجرة

بعد معرفة مميزات وعيوب كل طريقه يجب إختيار أفضل حل بما يناسب ميزانية أحمد 😎

إذا أمتلك أحمد المال الكافي يختار
⭕ سيارة الأجرة

إذا لم يمتلك المال الكافي سوف يختار
⭕ المواصلات العامة.

What Are Computer Algorithms, and How Do They Work?

✴ الخوارزميات في البرمجة.
هي مجموعة من التعليمات البرمجية الواضحة التي يتم تنفيذها واحدة تلو الآخرى بشكل متسلسل لحل مشكلة ما.

تهتم دراسة الخوارزميات بعاملين مهمين.

⭕ Time complexity الوقت الذي يقضيه الكمبيوتر فى تنفيذ الخوارزمية

⭕ Space complexity كمية الذاكرة التي استخدمها البرنامج لتنفيذ الخوارزمية.

مثال.
⭕ قم بعمل برنامج جمع الأعداد من 1 إلى 1000
(1 + 2 + 3 + …… 1000)

طرق الحل
✴ إستخدام دوال التكرار نقوم بعمل دالة تكرار تجمع الأرقام من 1 إلى 1000

باستخدام javascript

js
let total = 0;
for(let i = 1 ; i <= 1000; i++) {
total += i;
}
console.log(total);

إستخدام هذه الطريقة لن يستخدم الكثير من الذاكرة لكن زمن التنفيذ طويل جدا .

✴ باستخدام القاعدة التالية
المجموع = N * (N + 1) / 2

حيث N = الرقم الذي نريد الجمع إليه

js
function sumTo(n) {
return ((n + 1) * n) / 2;
}

let total = sumTo(1000)

console.log(total)

هذه الطريقة لا تحتاج إلى الكثير من الوقت و لا تستخدم الكثير من الذاكرة

✳ عوامل جودة الخوارزمية
✴ زمن التنفيذ قليل
✴ لا تحتاج إلى إستخدام الذاكرة بشكل كبير
✴ خطوات واضحة وسهلة الفهم
✴ تحديد المدخلات والمخرجات بدقة

✳ لماذا يجب تعلم الخوارزميات.

تبرز أهمية تعلم الخوارزميات في
⭕ تحسين وقت تنفيذ البرنامج.
⭕ إستخدام الذاكرة بشكل صحيح.
⭕ تبسيط الكود بسبب الإعتماد على خطوات واضحة وسهلة الفهم

Laravel Packages أفضل ال
مناقشة عامة في البرمجة أم الشبكات
PHP اليك 6 اسباب لتبدأ بتعلم
أفضل أدوات مطوري الويب لمشاريع برمجية
Joomla مقدمة في إستخدام
حمل الأن البرنامج المتخصص في التحقيق الجنائي الرقمي والمستعمل من قبل كثير من الشركات الكبيرة
موقع خاص لكلمات المرور الخاصة بالراوترات
ISO تنزيل ويندوز 11 مجانا جميع التوزيعات
تحديث مايكروسوفت ويندوز 10 لشهر اوكتوبر يمكن أن يتسبب بحذف ملفاتك
تاريخ القرصنة الألكترونية
كيف يكسب المخترقون الأموال
اسرع كمبيوتر بالعالم
ما هو الأمن السيبراني وما هي تخصصاته وكيف أتعلمه ؟