TrueschoTruescho
كل الدورات
هياكل البيانات والخوارزميات 4: مطابقة الأنماط وخوارزميات الرسوم والبرمجة الديناميكية
edX
دورة
متوسط
مجاني للتدقيق
شهادة

هياكل البيانات والخوارزميات 4: مطابقة الأنماط وخوارزميات الرسوم والبرمجة الديناميكية

The Georgia Institute of Technology

تعلّم مطابقة الأنماط (KMP وRabin‑Karp) وخوارزميات الرسوم مثل ديكسترا وMST، مع تطبيقات برمجة ديناميكية بلغة جافا.

9 ساعة/أسبوع5 أسبوعالإنجليزية7,204 متسجل
مجاني للتدقيق

عن الدورة

تُكمل هذه الدورة «هياكل البيانات والخوارزميات» تسلسل البرنامج المكوّن من أربع دورات، عبر التركيز على خوارزميات الرسوم البيانية (Graphs)، والبرمجة الديناميكية، وحلول مطابقة الأنماط في معالجة النصوص. كما تتضمن مراجعة قصيرة للغة Java حول الموضوعات المرتبطة بهياكل البيانات الجديدة التي يغطيها هذا الجزء. تتطلب الدورة معرفة مسبقة بلغة Java، وبالبرمجة كائنية التوجه، وبعدد من هياكل البيانات الخطية وغير الخطية. ويجري دمج مفهوم التعقيد الزمني (Time Complexity) على امتداد محتوى الدورة ضمن جميع هياكل البيانات والخوارزميات التي ستتعلمها وتطبّقها. ستتعمق في «النوع المجرّد للبيانات» للرسوم البيانية (Graph ADT) وفي البنى المساعدة المستخدمة لتمثيل الرسوم (مثل تمثيلات القوائم والمصفوفات/المصفوفات المجاورة وغيرها). ويُعد فهم هذه التمثيلات أساسياً لتطوير خوارزميات قادرة على اجتياز الرسم البياني بالكامل بكفاءة. ستدرس خوارزميتي اجتياز رئيسيتين: البحث بالعمق (Depth-First Search) والبحث بالعرض (Breadth-First Search)، ثم تنتقل إلى خوارزميات محورية تعمل على الرسوم البيانية مثل خوارزمية ديكسترا لإيجاد أقصر مسار. كما ستتعلم خوارزميات بناء «شجرة الامتداد الدنيا» (Minimum Spanning Tree - MST) انطلاقاً من الرسم البياني. وفي جانب معالجة النصوص، ستستكشف خوارزميات مطابقة الأنماط بدءاً من الأساليب البسيطة (Brute Force) وصولاً إلى KMP وBoyer–Moore وRabin–Karp، مع التركيز على دور المعالجة المسبقة (Preprocessing) ومشكلات الاعتماد على الشيفرات التجزئية (Hash Codes) واحتمالات التصادم. ستستخدم أيضاً أدوات التصوّر في الدورة لفهم خطوات الخوارزميات أثناء التنفيذ.

ماذا ستتعلم

  • تحسين مهارات البرمجة بلغة Java عبر تنفيذ خوارزميات الرسوم البيانية وخوارزميات البرمجة الديناميكية
  • دراسة تقنيات الخوارزميات لاكتشاف الأنماط ضمن تطبيقات معالجة النصوص
  • استخدام المعالجة المسبقة في خوارزميتي Boyer–Moore وKMP
  • استكشاف الإشكاليات المرتبطة بالشيفرات التجزئية (Hash Codes) في خوارزمية Rabin–Karp
  • فهم Graph ADT وتمثيلاته ضمن البنى المساعدة
  • اجتياز الرسوم البيانية باستخدام خوارزميتي البحث بالعمق (DFS) والبحث بالعرض (BFS)

المتطلبات المسبقة

  • معرفة أساسية بلغة البرمجة Java
  • فهم مبادئ البرمجة كائنية التوجه
  • إلمام بأنواع البيانات المجرّدة المختلفة من القوائم المرتبطة (LinkedLists) إلى خرائط التجزئة (Hashmaps) إلى الأشجار (Trees) إلى المكدسات والطوابير (Stacks & Queues)

المدرسون

M

Mary Hudachek-Buswell

Associate Chair, School of Computing Instruction

المواضيع

خوارزميات الرسوم البيانية
البرمجة كائنية التوجه في جافا
الهجمات بالقوة الغاشمة
بروتوكولات شجرة الامتداد
معالجة النصوص

معلومات الدورة

المنصةedX
المستوىمتوسط
طريقة التعلمغير محدد
شهادةمتاحة
السعرمجاني للتدقيق

المهارات

خوارزميات الرسوم البيانية
البرمجة كائنية التوجه في جافا
الهجمات بالقوة الغاشمة
بروتوكولات شجرة الامتداد
معالجة النصوص
Dynamic Programming
Algorithms
Greedy Algorithm
Data Structures
Shortest Path Problem

ابدأ التعلم الآن