You May Also Like

هو اختصار لــ High Definition Multimedia Interface، أي واجهة الوسائط المتعددة عالية الدقة، وهو أكثر واجهات الدقة العالية HD استخداماً ...
Read More
HDMI كل ما تريد معرفته عن مدخل
تصاعدت هجمات برامج الفدية التي تستهدف الشركات ، حيث تجاوزت 68.5٪ من الشركات التي وقعت ضحية لها في عام 2021 . الأمر الأكثر ...
Read More
برامج الفدية في ازدياد ، ويمكن لهذه الأداة حماية عملك
ما هو تعلم الالة (Machine Learning) ؟ تعلم الآلة هو أحد فروع الذكاء الاصطناعي التي تهتم بتصميم وتطوير خوارزميات وتقنيات ...
Read More
ما هو تعلم الالة Machine Learning

 

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

مثال
خوارزمية حساب العمر.
السنة الحالية – سنة الميلاد = العمر
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)

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

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

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

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

 

Last Article