هذا الريبو مخصص لأي فرد يرغب في تحسين مهاراته في حل المشكلات لإجراء مقابلات هندسة البرمجيات.
يتم تجميع المشكلات تحت الموضوع الفرعي الخاص بها، من أجل التركيز على تطبيق الأنماط الشائعة بشكل متكرر بدلاً من معالجة الأسئلة بشكل عشوائي.
جميع الأسئلة متاحة على موقع leetcode.com، وبعضها يتطلب قسطًا من leetcode.
للحصول على أكبر قدر من النجاح عند التدريب، يوصى بشدة بمعرفة أساليب وأوقات تشغيل هياكل البيانات التالية وعملياتها:
بالإضافة إلى ذلك، يجب أن يكون لديك فهم جيد للخوارزميات الشائعة مثل:
يحتوي ملف pdf هذا على معلومات حول هياكل البيانات الرئيسية في Java.
تشمل الطرق المفيدة الأخرى التي يجب معرفتها substring()
و toCharArray()
و Math.max()
و Math.min()
و Arrays.fill()
.
يمكن العثور على قائمة الأسئلة بأكملها هنا: https://seanprashad.com/leetcode-patterns/.
يمكن العثور على الحلول المكتوبة بلغة Java في فرع الحلول.
هل تعتقد أن السؤال يجب/لا ينبغي تضمينه؟ أتمنى أن يكون هناك ميزة أخرى؟ لا تتردد في فتح قضية مع اقتراحك!
هذه القائمة مستوحاة بشكل كبير من مقابلة Grokking the Coding مع مشاكل إضافية مستخرجة من قائمة Blind 75 ومقالة hackernoon هذه حول 14 نمطًا للإجابة على أي سؤال في مقابلة البرمجة.