۶۰ مسئله LeetCode برای حل کردن و آماده شدن در مصاحبه‌های برنامه‌نویسی


۰


در این مطلب، مجموعه‌ای از سوالات برای کمک به موفقیت در مصاحبه‌های برنامه‌نویسی را معرفی می‌کنم. دسته‌بندی آن‌ها به شرح زیر است:

  • LinkedList (لیست پیوندی)
  • Stack (پشته)
  • Heap, PriorityQueue (هیپ، صف اولویت)
  • HashMap (هَش‌مپ)
  • Graph, BFS, DFS (گراف، جستجوی عرضی و عمقی)
  • Tree, BT, BST (درخت، درخت دودویی، درخت جستجوی دودویی)
  • Sort (مرتب‌سازی)
  • Dynamic Programming (برنامه‌نویسی داینامیک)
  • Binary search (جستجوی دودویی)
  • Recursion (بازگشتی)
  • Sliding window (پنجره لغزان)
  • Greedy + Backtracking (حریصانه + عقب‌گرد)

اگر بتوانید این مسائل را سریع حل کنید، احتمال قبولی در مصاحبه برنامه‌نویسی شما بسیار بالا می‌رود. مسائل یا آسان (Easy) هستند یا متوسط (Medium). تمام سوالات در یک Google Spreadsheet جمع‌آوری شده‌اند. می‌توانید آن را کپی کرده و برای پیگیری پیشرفت خود استفاده کنید.

همچنین این مسائل در LeetCode List نیز در دسترس هستند که می‌توانید آن را به حساب خود کلون کنید تا مشکلاتی که قبلاً حل کرده‌اید دوباره تکرار نشوند.


LinkedList

Stack

Heap, PriorityQueue

HashMap

Graph, BFS, DFS

Tree, BT, BST

Sort

در این زمینه به Animations الگوریتم‌های مرتب‌سازی نگاه کنید. درک کنید که در چه مجموعه داده‌هایی الگوریتم‌هایی مانند radix sort یا insertion sort بهتر از heap یا merge sort عمل می‌کنند. هر الگوریتم مرتب‌سازی را بررسی کنید و مزایا و معایب آن‌ها را بسنجید.

Dynamic Programming

Binary Search

Recursion

Sliding Window

Greedy + Backtracking

Others (سایر مسائل)

این سوالات در دسته‌های بالا جا نمی‌گیرند اما خوب است حل شوند:


خلاصه

اگر همه سوالات بالا را حل کردید و به دنبال مجموعه سوالات بیشتر هستید، پیشنهاد می‌کنم به Algorithm Questions نگاهی بیندازید. آن‌ها نیز مسائل LeetCode را دسته‌بندی کرده‌اند.

اگر آنجا را هم به پایان رساندید، مجموعه Algorithms and Coding Interviews را بررسی کنید. دوستم مشغول نوشتن آن است و خواندنش ارزشمند است. این منبع توضیحات دقیق‌تر و راهکارهای کلی‌تری را برای مسائل ارائه می‌دهد.

اینجا هم لینک‌هایی برای پیگیری پیشرفتتان:

موفق باشید!

ابزار برنامه نویسی
پایتون

۰


نظرات


author
نویسنده مقاله: سارا عظیمی

کد با می متعهد است که بالاترین سطح کیفی آموزش را در اختیار شما بگذارد. هدف به اشتراک گذاشتن دانش فناوری اطلاعات و توسعه نرم افزار در بالاترین سطح ممکن برای درستیابی به جامعه ای توانمند و قدرتمند است. ما باور داریم هر کسی میتواند با استمرار در یادگیری برنامه نویسی چالش های خود و جهان پیرامون خود را بر طرف کند و به موفقیت های چشم گیر برسد. با ما در این مسیر همراه باشید. کد با می اجتماع حرفه ای برنامه نویسان ایرانی.

تمام حقوق این سایت متعلق به وبسایتcodebymeمیباشد.