يوصى بالقراءة عبر الإنترنت (غالبًا ما يكون الوصول إلى Github غير مستقر في البلد)
يوصى بمزامنة Gitee
- مقدمة : هذا المشروع عبارة عن مجموعة كاملة من خطط الاختبار، المصممة لمساعدة الجميع على تجنب الانعطافات، وتعلم الخوارزميات خطوة بخطوة، ومتابعة المؤلف.
- تم نشره رسميًا : "أفكار الكود".
- نسخة PDF : نسخة PDF من "Code Random Notes" على الخوارزميات.
- فئة الخوارزمية المفتوحة : فئة فتح فيديو خوارزمية "التسجيل العشوائي للكود".
- أقوى مقال من ثمانية أجزاء : أفكار عشوائية حول كود تسجيل جوهر كوكب المعرفة PDF
- ترتيب الإجابة على الأسئلة : قام الملف README بترتيب الإجابة على الأسئلة، ويمكنك فقط الإجابة عليها واحدًا تلو الآخر بالترتيب.
- مجتمع التعلم : تعلم معًا حول مهارات تسجيل الوصول/المقابلة/كيفية اختيار العرض/التوصيات من الشركات الكبيرة/قواعد مكان العمل/تعديل السيرة الذاتية/مشاركة التكنولوجيا/حياة البرنامج. مرحبًا بك في الانضمام إلى كوكب المعرفة "Code Caprice".
- إرسال الكود : يستخدم هذا المشروع لغة C++ للشرح، ولكن هناك بالفعل إصدارات متعددة اللغات مثل Java وPython وGo وJavaScript وما إلى ذلك. شكرًا لكل مساهم هنا إذا كنت تريد أيضًا المساهمة برمز لإضاءة الصورة الرمزية الخاصة بك ، انقر فوق تعرف على كيفية إرسال الرمز الخاص بك هنا.
- ملحوظة لإعادة الطبع : جميع المقالات التالية هي أعمال أصلية من تأليفي (المبرمج كارل). يرجى الإشارة إلى المصدر عند اقتباس مقالات من هذا المشروع. إذا وجدت سرقة أدبية أو نقل ضار، فسوف تستخدم الأسلحة القانونية لحماية حقوقك ومصالحك. دعونا نحافظ على بيئة إنشاء تقنية جيدة معًا!
يعاني العديد من الطلاب الذين بدأوا للتو في الإجابة على الأسئلة من الارتباك: حيث يواجهون ما يقرب من 2000 سؤال على Leetcode، من أين يبدأون.
يشعر الجميع أن كفاءة الإجابة على الأسئلة غير فعالة، وأن الوقت يضيع بشكل أساسي في ثلاث نقاط:
في الواقع، لقد أجبت على هذا السؤال من قبل في Zhihu، والإجابة تقريبًا هي كما يلي: المصفوفة-> القائمة المرتبطة-> جدول التجزئة-> السلسلة-> المكدس وقائمة الانتظار-> الشجرة-> التراجع-> الجشع-> البرمجة الديناميكية -. > نظرية الرسم البياني -> هياكل البيانات المتقدمة، ثم ابدأ بالأبسط منها، وبعد القيام ببعض أنواع الأسئلة، انتقل تدريجيًا إلى الأسئلة المتوسطة والصعبة.
لكن يمكنني أن أضع نفسي في مكاني وأشعر: حتى مع مثل هذه الخطة الشاملة، من الصعب جدًا على المبتدئ أو حتى المخضرم في الخوارزميات العثور على موضوع يناسبه، وتكلفة الوقت مرتفعة جدًا، والموضوع ليس كذلك بالضرورة موضوع كلاسيكي.
عندما يتعلق الأمر بالإجابة على الأسئلة، نريد جميعًا استخدام أقصر وقت لحل جميع الأسئلة الكلاسيكية بترتيب الصعوبة خطوة بخطوة ، بحيث تكون الكفاءة هي الأعلى!
لذلك قمت بتجميع دليل لمسح أسئلة Leetcode: ترتيب تفصيلي للغاية للإجابة على الأسئلة. لقد قمت باختيار كل سؤال بعناية، وهي جميعها أسئلة مقابلة كلاسيكية وعالية التكرار ، ما عليك سوى اتباع هذا الترتيب . لقد رتب الملف README ترتيب الأسئلة، وترتيب المقالات هو ترتيب الإجابة على الأسئلة! ما عليك سوى مسحها واحدة تلو الأخرى، ولن تضطر إلى خوض بحر من الأسئلة واختيار المواضيع بنفسك!
علاوة على ذلك، قمت بكتابة حلول تفصيلية لكل سؤال (بالصور والنصوص ومقاطع الفيديو حول النقاط الصعبة)، وحلولي مدرجة في الصفحة الرئيسية للأسئلة المقابلة والجودة واضحة للجميع.
لقد قمت الآن بترتيب ترتيب الإجابة على الأسئلة لمساعدة المزيد من الطلاب الذين يتعلمون الخوارزميات على تجنب الانعطافات!
إذا كنت تقوم بتنظيف Leetcode، فمن المستحسن اتباع ترتيب حل الأسئلة في هذا الدليل، وبعد الانتهاء من التنظيف، ستجد أنك قد حققت قفزة نوعية في نظام المعرفة بأكمله، ولا يتعين عليك البحث عنه. الاتجاهات في بحر الأسئلة.
وفقًا لترتيب الترتيب المذكور أعلاه، ما عليك سوى البدء بالفرشاة من المصفوفة، وقد تم ترتيب الترتيب، لذا فقط قم بالفرشاة بالترتيب.
في دليل طرح الأسئلة، يحتوي كل موضوع على فصل أساسي نظري في البداية، وهو ليس مثل المقدمة النظرية التي تشبه الكتاب المدرسي، ولكنه ملخص للمعرفة الأساسية المطلوبة من القتال الفعلي. ويوجد ملخص في نهاية كل موضوع وهو الملخص الأشمل للموضوع.
إذا كنت خبيرًا في الخوارزميات، فهذا الدليل هو أيضًا أفضل مادة للمراجعة. إذا قرأت ملخص كل سلسلة بسرعة، فسوف يعود إلى ذهنك نظام المعرفة الخوارزمي بالكامل والحلول المتنوعة.
كل حل هنا هو تحفة ويستحق دراسة متأنية .
أستخدم لغة C++ بشكل موحد في تفسيرات المشكلة، لكنك ستجد أن كل شرح للمشكلة أدناه تقريبًا مزود بإصدارات لغات أخرى، مثل Java وPython وGo وJavaScript وما إلى ذلك. وهذا هو الكود الذي ساهم به هؤلاء الأشخاص المتحمسون بالطبع ، سأقوم أيضًا بالتحكم الصارم في جودة الكود.
لذلك، نرحب بالجميع للمشاركة، وتحسين الإصدارات اللغوية المختلفة لحلول المشكلات، وتبني المصادر المفتوحة، وإفادة المزيد من الأصدقاء .
هل أنت مستعد لنبدأ دليل الاختبار، انطلق، انطلق!
مجتمع التعلم "كود كابريس".
لغة البرمجة
أداة
أبحث عن وظيفة
تحليل أداء الخوارزمية
يتم تطبيق طريقة المؤشر المزدوج بشكل أساسي على مشاكل المصفوفات والسلاسل والقوائم المرتبطة.
مخطط تصنيف الموضوع هو كما يلي:
مخطط تصنيف الموضوع هو كما يلي:
مخطط تصنيف الموضوع هو كما يلي:
لقد بدأ موضوع البرمجة الديناميكية بالفعل، ليس هناك وقت للشرح، أيها الأصدقاء، اصعدوا إلى الحافلة ولا تتخلفوا عن الركب!
سلسلة مشكلة حقيبة الظهر:
سلسلة السرقة:
سلسلة الأسهم:
سلسلة لاحقة:
تم إصدار نظرية الرسم البياني رسميًا
(تحديث مستمر...)
الأسئلة المذكورة أعلاه هي الأولوية القصوى، ويجب عليك دراستها مرتين على الأقل لفهمها بشكل كامل. إذا كنت تتقن الأسئلة المذكورة أعلاه وما زلت تبحث عن أسئلة أخرى للتدرب عليها، فيمكنك دراسة الأسئلة التالية مرة أخرى:
هذه الأسئلة جيدة جدًا، ولكن بعضها يشبه دليل تنظيف الأسئلة، وسيتم استكمال بعض حلول المشكلات لاحقًا، لذلك لم أدرجها في دليل تنظيف الأسئلة. سأقوم بتحسين بعض حلول المشكلات في المستقبل ثم سأدمجها في استراتيجية حل المشكلات.
قوالب خوارزمية أساسية مختلفة
انقر هنا لعرض جميع المساهمين في LeetCode-Master. نشكرهم على استكمال إصدارات اللغات الأخرى من LeetCode-Master حتى يتمكن المزيد من القراء من الاستفادة من هذا المشروع.
مرحبًا بالجميع، أنا المبرمج كارل، زميل أول في معهد هاربين للتكنولوجيا ومؤلف كتاب "Code Captions". لقد شاركت في البحث والتطوير للتقنيات الخلفية الأساسية في Tencent وBaidu.
أضف حساب WeChat الخاص بالشركة التالي وسيتم إرسال نسخة PDF تلقائيًا إلى الجميع. يمكنك أيضًا اختيار ما إذا كنت تريد الانضمام إلى مجموعة الإجابة على الأسئلة.
تذكر أن تقوم بتدوين ملاحظة عند إضافة WeChat إذا كنت تعمل بالفعل، فلاحظ: الاسم-المدينة-الموقع. إذا كان الطالب، يرجى ملاحظة: الاسم-المدرسة-الصف. ملحوظة: إذا لم تقدم نفسك، فلن تتمكن من النجاح.