تطوير الويب

شرح عام عن الخوارزميات

 

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

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

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

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

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

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

 

مقالات ذات صلة

اترك تعليقاً

زر الذهاب إلى الأعلى

هذا المحتوى محمي من النسخ لمشاركته يرجى استعمال أزرار المشاركة السريعة أو تسخ الرابط !!