
يتناول هذا المقرر هياكل البيانات والخوارزميات اللازمة لتمثيل بيانات لا تعتمد على ترتيب خطي واضح. ستتعرف أولا على الجداول الهاشية وكيف توفر وصولا شبه فوري للبيانات عبر مفاتيح اعتباطية مثل رقم، عنوان URL، أو كلمة في قاموس. ستفهم كيف تعمل دوال الهاش، وما معنى التصادمات، وكيف تؤثر استراتيجيات المعالجة (سلاسل أو عنونة مفتوحة) على الأداء والذاكرة. بعد ذلك ينتقل المقرر إلى بنية المجموعات المنفصلة (Disjoint Sets) التي تدعم عمليات الاتحاد والبحث بسرعة، وتستخدم بكثرة في التجميع وبناء المكونات المتصلة وخوارزميات الرسوم البيانية. ثم ستدرس الرسوم البيانية كطريقة لتمثيل العلاقات: بين صفحات ويب، مستخدمين، أو عقد في شبكة. ستطبق مفاهيم أساسية مثل التمثيل بالقوائم أو المصفوفات، والاستكشاف عبر BFS وDFS، وتتعلم كيف ترتبط هذه الأدوات بمسائل التوجيه في الشبكات. خلال المقرر ستوازن بين الاختيارات التصميمية بناء على التعقيد الزمني والقيود العملية. بنهاية هذا المقرر ستكون قادرا على بناء حلول تعتمد على الهاش والرسوم البيانية لمعالجة بيانات ضخمة غير مرتبة، وتفسير أسباب نجاح أو تدهور الأداء في سيناريوهات مختلفة.
Wade Fagen-Ulmschneider
Computer Science