مختبر الخوارزمية
مرحبًا بك في مستودع مختبر الخوارزمية ! يحتوي هذا المشروع على تطبيقات لخوارزميات مختلفة ، مصممة لتكون بمثابة مورد للتعلم والمرجع والتعاون. سواء كنت طالبًا أو مطورًا أو مجرد شخص مهتم بالخوارزميات ، ستجد رمزًا وتفسيرات مفيدة هنا.
وشملت الخوارزميات
خوارزميات البحث
- البحث الخطي : خوارزمية بحث بسيطة تتحقق من كل عنصر من عناصر القائمة حتى يتم العثور على العنصر المطلوب.
- البحث الثنائي : خوارزمية فعالة للعثور على عنصر من قائمة العناصر المصنفة ، مما يقلل من تعقيد الوقت إلى O (log n).
خوارزميات الرسم البياني
- البحث الأول عن العرض (BFS) : خوارزمية لاجتياز أو بحث هياكل بيانات الشجرة أو الرسم البياني ، بدءًا من عقدة الجذر واستكشاف جميع الجيران في العمق الحالي قبل الانتقال إلى العقد على مستوى العمق التالي.
- البحث الأول في العمق (DFS) : خوارزمية للعبور أو البحث عن هياكل بيانات الأشجار أو الرسم البياني ، بدءًا من الجذر والاستكشاف قدر الإمكان على طول كل فرع قبل التراجع.
فرز الخوارزميات
- دمج نوع : خوارزمية الفجوة والقهر التي تقسم الصفيف إلى نصفين ، وفرزها ، ثم دمجها معًا.
- النوع السريع : خوارزمية فرز فقس فعالة في مكانها.
هياكل البيانات
- خوارزمية الكومة : تنفيذ بنية بيانات الكومة والعمليات ذات الصلة.
البرمجة الديناميكية
- خوارزمية قطع القضيب : مشكلة التحسين التي تتضمن قطع قضيب إلى قطع أصغر لزيادة الربح.
الملفات
-
linear_search.cpp : تنفيذ خوارزمية البحث الخطي. -
binary_search.cpp : تنفيذ خوارزمية البحث الثنائي. -
breadth_first_search.cpp : تنفيذ خوارزمية البحث الأولى. -
depth_first_search.cpp : تنفيذ خوارزمية البحث في العمق. -
heap_algorithm.cpp : تنفيذ خوارزمية الكومة. -
merge_sort.cpp : تنفيذ خوارزمية فرز الدمج. -
quicksort.cpp : تنفيذ خوارزمية الفرز السريع. -
rod_cutting.cpp : تنفيذ خوارزمية قطع قضيب.
إرشادات المساهمة
نرحب بالمساهمات من المجتمع! فيما يلي بعض الطرق التي يمكنك المساهمة بها:
- أخطاء الإبلاغ : إذا وجدت أي أخطاء أو مشكلات ، فيرجى الإبلاغ عنها باستخدام متتبع المشكلة.
- تحسين الوثائق : ساعدنا في تحسين الوثائق وتسهيل على الآخرين فهم الرمز.
- تحسين الرمز : اقترح تحسينات أو تحسينات على التطبيقات الحالية.
- أضف خوارزميات جديدة : إذا كانت هناك خوارزمية غير مغطاة هنا ، فلا تتردد في تنفيذ طلب السحب وتقديمه.
كيفية المساهمة
- شوكة المستودع على جيثب.
- استنساخ شوكة الخاص بك إلى جهازك المحلي باستخدام الأمر التالي:
git clone https://github.com/imashiqe/algorithm_lab.git
- قم بإنشاء فرع جديد للميزة الخاصة بك أو إصلاح الأخطاء.
- ارتكب التغييرات الخاصة بك مع وصف واضح لما قمت به.
- ادفع إلى فرعك على جيثب.
- إرسال طلب سحب إلى المستودع الرئيسي.
رخصة
تم ترخيص هذا المشروع بموجب ترخيص معهد ماساتشوستس للتكنولوجيا - راجع ملف الترخيص للحصول على التفاصيل.