مشكلة المستودع الفوضوي
تبدأ الدورة بسيناريو مستودع طرود فوضوي لتفهم لماذا تنظيم البيانات ليس رفاهية بل ضرورة.
أهداف الدرس
- تفهم معنى هيكل البيانات بطريقة واقعية.
- تميّز بين البيانات الخام وتنظيم البيانات.
- تدرك أن اختيار الهيكل يؤثر على سرعة البحث والإضافة والحذف.
القصة
تخيل شركة شحن في الرياض استقبلت آلاف الطرود خلال ساعة واحدة. كل الطرود مكتوبة في قائمة طويلة: اسم العميل، رقم الطلب، المدينة، والحالة. موظف واحد يبحث يدويًا عن طلب عميل اسمه سعد. يبدأ من أول القائمة ويمر على طلب بعد طلب. بعد دقائق يجد الطلب، لكن يصل عميل آخر، ثم ثالث. المشكلة ليست أن الحاسب ضعيف؛ المشكلة أن البيانات موضوعة بطريقة عشوائية.
الفكرة البرمجية
هيكل البيانات هو طريقة لتنظيم البيانات داخل البرنامج بحيث تصبح العمليات المهمة أسهل: الإضافة، الحذف، البحث، الترتيب، والوصول. لا يوجد هيكل أفضل دائمًا؛ كل هيكل ممتاز في موقف وضعيف في موقف آخر.
تخيلها بصريًا
قائمة واحدة ضخمة تشبه مستودعًا بلا أرفف. عندما نضيف أرففًا ومسارات وملصقات، لا نغيّر الطرود نفسها، بل نغيّر طريقة الوصول إليها.
جرّب الفكرة
- افتح المحاكي.
- انتقل بين Stack و Queue و Linked List و BST.
- لاحظ أن كل هيكل يعرض البيانات بطريقة مختلفة رغم أن القيم قد تكون نفسها.
تحدي الدرس
اكتب موقفًا من حياتك اليومية توجد فيه بيانات كثيرة تحتاج إلى ترتيب. ثم اختر: هل المشكلة بحث؟ انتظار؟ تراجع؟ ربط عناصر؟
تحقق سريع
- ما المقصود بهيكل البيانات؟
الإجابة: طريقة لتنظيم البيانات لتسهيل العمليات عليها - هل يوجد هيكل بيانات هو الأفضل دائمًا؟
الإجابة: لا، يعتمد على نوع المشكلة