تواصل معنا

كورس جافا سوينج
كورس أختبار البرمجيات
الان ومجانا لمدة شهر اللهم ارفع عنا البلاء والوباء
كورس لغة الدارت والفلتر
عن المدونة
Mohon Aktifkan Javascript!Enable JavaScript

الخميس، 28 مارس 2019

الخوارزميات الحلقة التاسعة Big-o Notation

                               بسم الله الرحمن الرحيم 
تستخدم Big-o لقياس كفاءه الخوارزميات إذا وجد أكثر من خوارزمية تقوم بنفس الوظيقة فكيف نختار الأفضل يتم ذلك من خلال Big-o


يتم أختار الأفضل من حيث 
1-السرعة
2-الذاكرة المطلوية 
مع الأخد في الأعتبار أنه يتم العمل علي أسوأ الحالات Worst Case
تخيل أنه تم تمثيل علاقة بين كمية البيانات المستخدمة والوقت 
أبسط معادلة يمكن استخدامها هي  o(1)
أي أنها تستغرق وقت ثابت 
مثال علي ذلك هو الوصول لرقم معين من خلال رقم index في مصفوفة هنا تم تحديد الرقم ومكانه في المصفوفة فسيكون الوقت المطلوب ثابت 
 وعندما تزاد البيانات أكثر نستخدم معادلة o(log2n)
مثال : log2(16)
الحل 
 log2(16)=x
16=x^2
x=4
هنا نلاحظ زيادة الوقت ولكن ليس بالكثير 
هناك معادلة تستخدم للبحث عن رقم في المصفوفة هي o(n)
مثال 
لدينا مصفوفه تتكون من ستة أرقام ونريد البحث عن العدد 5 فأسوا حالة هنا أننا سنمر علي السته أعداد الموجودة بالمصفوفة للوصول للعدد 5 
نستخدم هذه المعادلة مع نوع البحث الخطي Linear search
وبزيادة البيانات أكثر تستخدم معادلات أخري حتي نصل لل O(n^2)
أي نستخدم ضعف الوقت  
لمتابعة الحلقة السابقة
الخوارزميات الحلقة الثامنة مقاييس تحليل الخوارزمية  
لمتابعة الحلقة التالية 
الخوارزميات الحلقه العاشرة Big-o Notation Time Complexity  

ليست هناك تعليقات:

إرسال تعليق