سؤال يتكرر في رسائل المتعلمين العرب: «كل إعلانات الوظائف والمقابلات تذكر هياكل البيانات والخوارزميات — شو هي بالضبط؟ وليش كل هالاهتمام؟». هذا الدليل يجيب من الصفر، بلا رطانة أكاديمية.
التعريف بجملتين (وبمثال مطبخ)
- هيكل البيانات: طريقة تنظيم المعلومات في الذاكرة.
- الخوارزمية: خطوات معالجة هذه المعلومات لحل مشكلة.
تخيّل مطبخًا: ترتيب الأدوات في الأدراج (كل نوع بدرج، أم كومة واحدة؟) هو هيكل البيانات — ووصفة الطبخ خطوة بخطوة هي الخوارزمية. المطبخ الفوضوي تنجز فيه الوصفة، لكن ببطء مؤلم: التنظيم الصحيح يجعل نفس الخطوات أسرع بآلاف المرات.
أنت تستخدمها يوميًا دون أن تدري
| الهيكل | فكرته | أين قابلته اليوم |
|---|---|---|
| المصفوفة Array | عناصر متجاورة بترتيب | قائمة تشغيل الأغاني |
| المكدس Stack | آخر داخل أول خارج | زر التراجع Ctrl+Z، وسجل «رجوع» بالمتصفح |
| الطابور Queue | أول داخل أول خارج | طابور الطباعة، رسائل الواتساب المعلقة |
| جدول Hash | مفتاح → قيمة فورًا | جهات الاتصال: الاسم يجيب الرقم لحظيًا |
| الشجرة Tree | تفرع هرمي | مجلدات جهازك، وDOM كل صفحة ويب |
| الرسم البياني Graph | عقد وعلاقات | أصدقاء فيسبوك، وخرائط Google بين مدينتين |
الشركات لا تسأل عنها تنظيرًا — تسأل لأن كل نظام حقيقي مبني عليها.
لماذا تتعلمها؟ سببان عمليان لا ثالث لهما
1) كود لا ينهار عندما تكبر البيانات
ابحث عن اسم بين 10 أسماء: أي طريقة تنفع. بين 10 ملايين؟ الفرق بين اختيار القائمة (فحص واحدًا واحدًا) وجدول الـ hash (قفزة مباشرة) هو الفرق بين ثوانٍ مزعجة وأجزاء مللي ثانية — نفس الجهاز، نفس اللغة، اختلاف الهيكل فقط. هذا ما تصفه رموز Big O الشهيرة: O(n) مقابل O(1).
2) بوابة المقابلات التقنية — بلا مجاملة
نصف أسئلة المقابلات في الشركات الجادة (محليًا وعالميًا) تدور حول هذه المادة: «اعكس قائمة مرتبطة»، «أوجد التكرار في مصفوفة»، «صمم طابورًا بمكدسين». ليس تعجيزًا — بل لأن الأطر تتقادم والأساس يبقى، والشركة توظف طريقة تفكيرك لا حفظك لإطار الموسم.
خارطة التعلم العملية (بالترتيب)
- أساسيات لغة واحدة — شروط وحلقات ودوال. بايثون الأسلس للبداية، وجافاسكريبت ممتازة إن كنت في مسار الويب. لا تنتظر «الإتقان» — الأساسيات تكفي.
- الهياكل الستة بالترتيب: مصفوفات وقوائم ← مكدس وطابور ← قوائم مرتبطة ← جداول hash ← أشجار ← رسوم بيانية. كل واحدة: افهم فكرتها، اكتبها بيدك مرة، ثم استخدم جاهزة اللغة.
- الخوارزميات الكلاسيكية عليها: بحث خطي وثنائي، ترتيب، ثم اجتياز الأشجار والرسوم.
- تمرن بمسائل حقيقية — المعرفة بلا تمرين تتبخر قبل المقابلة.
وهذا بالضبط ترتيب مسار هياكل البيانات والخوارزميات بالعربي عندنا — مجاني بالكامل، بأمثلة تكتبها وتجربها، وينتهي بشهادة تضيفها لسيرتك.
أخطاء المبتدئين الثلاثة مع هذه المادة
- تأجيلها لـ«ما بعد الاحتراف» — هي أساس الاحتراف لا تاجه.
- الحفظ بلا كتابة: مشاهدة شرح المكدس لا تعلّمك المكدس — اكتبه بيدك ولو بعشرة أسطر.
- البدء بالمعقد: لا تفتح ملفات الرسوم البيانية قبل أن تهضم المصفوفات والقوائم — التسلسل ليس ترفًا.
الخلاصة
هياكل البيانات = تنظيم المعلومات، والخوارزميات = خطوات معالجتها — وهما معًا الفرق بين كود «يشتغل» وكود يصمد، وبين متقدمٍ للوظيفة ومقبولٍ فيها. ابدأ بعد أساسيات أول لغة، بالترتيب الستة المذكور، واكتب كل هيكل بيدك مرة واحدة على الأقل.
انطلق من مسار DSA الكامل بالعربي، وجهّز نفسك بعده بـ أشهر أسئلة مقابلات البرمجة و أي لغة تبدأ بها؟.