آموزش ۵۰ روز لیت‌کد با سی‌شارپ: الگوریتم‌ها و آمادگی برای مصاحبه‌های برنامه‌نویسی - آخرین آپدیت

دانلود 50 days of LeetCode in C# : Algorithms Coding Interviews

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره:

سوالات ساختار داده و الگوریتم‌ها را برای مصاحبه در شرکت‌های FAANG مانند گوگل، فیس‌بوک، اپل و آمازون تمرین کنید.

مسائل با سختی آسان تا دشوار را با استفاده از ساختارهای داده و الگوریتم‌های مختلف حل کنید.

نحوه حل برخی از پرطرفدارترین سوالات مصاحبه مطرح شده توسط شرکت‌های بزرگ فناوری.

تجزیه و تحلیل مسائل مصاحبه برنامه‌نویسی به صورت گام به گام و سیستماتیک.

الگوهای رایج مسائل.

تقویت مهارت‌های حل مسئله و برنامه‌نویسی شما.

پیش‌نیازها:

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

دانش اولیه از سی‌شارپ (C#) ترجیح داده می‌شود.

اگر می‌خواهید کد را خودتان ارسال کنید، باید با لیت‌کد (LeetCode) آشنایی داشته باشید و حساب کاربری فعال داشته باشید.

  • آیا می‌خواهید بر تکنیک‌های رایج حل مسئله، ساختارهای داده و الگوریتم‌هایی که مصاحبه‌کنندگان دوست دارند، مسلط شوید؟ همین الان شروع کنید!

  • تشنه توضیحات گام به گام برای داغ‌ترین سوالات مصاحبه در صنعت هستید؟ ما شما را پوشش می‌دهیم.

  • به دنبال ارتقای مهارت‌های خود در برنامه‌نویسی رقابتی هستید؟ برای یک سفر هیجان‌انگیز آماده شوید!


به دوره خوش آمدید!

در این دوره، توضیحاتی جامع و گام به گام از سوالات منتخب لیت‌کد (LeetCode) را خواهید داشت که در آن‌ها با محبوب‌ترین تکنیک‌ها و مسائل مورد استفاده در مصاحبه‌های برنامه‌نویسی آشنا می‌شوید. این همان دوره‌ای است که آرزو داشتم در زمان مصاحبه‌های خودم آن را داشتم. و با ضمانت بازگشت وجه 30 روزه ارائه می‌شود.


لیت‌کد (LeetCode) چیست؟

لیت‌کد (LeetCode) اساساً مخزنی عظیم از سوالات مصاحبه واقعی است که توسط محبوب‌ترین شرکت‌های فناوری (مانند گوگل، آمازون، فیس‌بوک، مایکروسافت و غیره) پرسیده می‌شوند.

مشکل لیت‌کد (LeetCode) در عین حال مزیت آن نیز هست: بسیار بزرگ است! آنقدر بزرگ که مصاحبه‌کنندگان از محبوب‌ترین شرکت‌ها اغلب مستقیماً سوالاتی را می‌پرسند که در لیت‌کد (LeetCode) پیدا می‌کنند. بنابراین، پیمایش در میان این حجم عظیم از مسائل برای یافتن آنهایی که واقعاً اهمیت دارند، دشوار است. این دوره دقیقاً برای همین منظور است.

من ساعت‌های بی‌شماری را در لیت‌کد (LeetCode) سپری کرده‌ام و به شما می‌گویم که نیازی نیست شما هم همین کار را بکنید و باز هم می‌توانید در یک شرکت بزرگ فناوری شغل پیدا کنید.

مرور کلی دوره:

در این دوره، من مهم‌ترین و محبوب‌ترین سوالات مصاحبه که توسط این شرکت‌های بزرگ پرسیده می‌شوند را گردآوری کرده و آن‌ها را به روشی کاملاً گام به گام توضیح می‌دهم تا به شما کمک کنم دقیقاً بفهمید چگونه این نوع سوالات را حل کنید.

مسائل به دقت انتخاب شده‌اند تا پوشش کاملی از محبوب‌ترین تکنیک‌ها، ساختارهای داده و الگوریتم‌ها که در مصاحبه‌ها استفاده می‌شوند، تضمین شود تا بتوانید الگوهایی را که در اینجا یاد می‌گیرید در مسائل دیگر نیز به کار ببرید.


هر مسئله چندین ویدئو دارد:

  • ویدئو(های) توضیح و شهود: در این بخش توضیح مفصلی از مسائل و راه‌حل آن‌ها ارائه می‌دهیم. این ویدئو طولانی‌تر خواهد بود زیرا توضیحات گام به گام برای مسائل خواهیم داشت.

  • ویدئو(های) کدنویسی: در این بخش راه‌حل بحث شده در ویدئوی توضیحات را با هم کدنویسی می‌کنیم.

  • ویدئو(های) مرور کد (Walkthrough): در این بخش به بررسی خط به خط کد می‌پردازیم و کارکرد آن را مشاهده می‌کنیم.


برای کدنویسی راه‌حل‌هایمان در این دوره از سی‌شارپ (C#) مقدماتی استفاده خواهیم کرد. دانش قبلی در سی‌شارپ ترجیح داده می‌شود اما برای بخش کدنویسی دوره الزامی نیست.


مسائل برای پیمایش آسان‌تر دسته‌بندی شده‌اند و به طور منظم با مسائل محبوب‌تر و جالب‌تر به‌روزرسانی خواهند شد.


برخی از موضوعاتی که این دوره پوشش می‌دهد:


  • سوالات مصاحبه آرایه‌ها (Arrays) و رشته‌ها (Strings).


  • سوالات مصاحبه جستجو (Searching) و الگوریتم‌ها.


  • سوالات مصاحبه برنامه‌نویسی پویا (Dynamic Programming).


  • سوالات مصاحبه بک‌ترکینگ (Backtracking) (  با تجسم گام به گام ).


  • سوالات مصاحبه درخت‌ها (Trees) و گراف‌ها (Graphs) و الگوریتم‌ها.


  • ساختارهای داده مانند پشته‌ها (Stacks)، صف‌ها (Queues)، نقشه‌ها (Maps)، لیست‌های پیوندی (Linked Lists) و موارد دیگر.


به عبارت دیگر، این دوره دروازه یکپارچه شما برای دستیابی به شغل رویایی‌تان است.




سرفصل ها و درس ها

مقدمه Introduction

  • چه باید کرد اگر یک توضیح یا ویدیوی کد را متوجه نشدید What to do if you don't understand an explanation or a code video

  • استفاده از فرمت ویدیویی دوره‌های آنلاین Utilise the video format of online courses

سوال آرایه مایکروسافت: ظرفی با بیشترین آب (متوسط) Microsoft Array Question: Container with most water (Medium)

  • مقدمه‌ای بر مسئله Introduction to the problem

  • راه حل جستجوی فراگیر (Brute Force) Brute force solution

  • بررسی شبه‌کد قدم به قدم pseudocode walkthrough

  • درک شهودی رویکرد بهتر Better Approach intuition

  • بررسی شبه‌کد رویکرد دوم Approach 2 Pseudocode walkthrough

  • پیاده‌سازی کد Implementing the code

سوال آرایه گوگل: آرایه کوهستان معتبر (آسان) Google Array Question: Valid mountain array (Easy)

  • مقدمه‌ای بر مسئله Introduction to the problem

  • چگونه به این مسئله فکر کنیم How to think about this problem

  • بررسی شبه‌کد قدم به قدم Pseudocode Walkthrough

  • پیاده‌سازی کد Implementing the code

سوال آرایه گوگل: قایق‌هایی برای نجات مردم (متوسط) Google Array Question: Boats to save people (Medium)

  • مقدمه مسئله Problem Introduction

  • چگونه به صورت شهودی به این مسئله فکر کنیم How to intuitively think about this problem

  • بررسی شبه‌کد قدم به قدم Pseudocode Walkthrough

  • پیاده‌سازی کد Implementing the code

سوال آرایه فیس‌بوک: جابجایی صفرها (آسان) Facebook Array Question: Move Zeroes (Easy)

  • درک شهودی Brute Force Brute force Intuition

  • بررسی شبه‌کد Brute Force قدم به قدم Brute force pseudocode walkthrough

  • درک شهودی رویکرد بهتر Better Approach Intuition

  • بررسی شبه‌کد رویکرد بهتر قدم به قدم Better Approach Pseudocode walkthrough

  • پیاده‌سازی کد Implementing the code

سوال آرایه آمازون: طولانی‌ترین زیررشته بدون تکرار کاراکترها (متوسط) Amazon Array Question: Longest substring without repeating characters (Medium)

  • مقدمه‌ای بر مسئله Introduction to the problem

  • درک شهودی Brute Force Brute Force Intuition

  • بررسی شبه‌کد قدم به قدم Pseudocode walkthrough

  • درک شهودی رویکرد دوم Approach 2 Intuition

  • بررسی شبه‌کد رویکرد دوم قدم به قدم Approach 2 pseudocode walkthrough

  • پیاده‌سازی کد Implementing the code

سوال آرایه‌ها: پیدا کردن اولین و آخرین موقعیت یک عنصر در آرایه مرتب‌شده (متوسط) Arrays Question:Find first and last position of element in sorted Array (Medium)

  • مقدمه‌ای بر مسئله و رویکرد Brute Force Introduction to the problem and brute force approach

  • بررسی شبه‌کد Brute Force قدم به قدم Brute force Pseudocode walkthrough

  • رویکرد دوم: درک شهودی رویکرد بهینه Approach 2: Optimal Approach intuition

  • بررسی شبه‌کد قدم به قدم - بخش ۱ Pseudocode walkthrough part 1

  • بررسی شبه‌کد قدم به قدم - بخش ۲ Pseudocode walkthrough part 2

  • پیاده‌سازی کد Implementing the code

سوال آرایه گوگل: اولین نسخه خراب (آسان) Google Array question: first bad version (Easy)

  • مقدمه‌ای بر مسئله و رویکرد Brute Force Introduction To The Problem And Brute Force Approach

  • درک شهودی راه حل بهینه Optimal Solution Intuition

  • بررسی شبه‌کد راه حل بهینه قدم به قدم Optimal solution pseudocode walkthrough

  • پیاده‌سازی کد Implementing the code

سوال ریاضی مایکروسافت: عدد گمشده (تقریباً آسان) Microsoft Math Question: Missing Number (Easy-ish)

  • مقدمه‌ای بر مسئله Introduction to the problem

  • رویکرد ۱: رویکرد Brute Force Approach 1: Brute Force Approach

  • رویکرد ۲: توضیح یک رویکرد بهتر Approach 2: A Better Approach Explanation

  • بررسی شبه‌کد قدم به قدم برای رویکرد ۲ PseudoCode Walkthrough For Approach 2

  • پیاده‌سازی کد Implementing the code

  • رویکرد ۳: رویکرد بهینه Approach 3: Optimal Approach

  • پیاده‌سازی رویکرد بهینه Implementing the optimal approach

سوال ریاضی آمازون: شمارش اعداد اول Amazon Math Question: Count Primes

  • مقدمه مسئله و توضیح Brute Force Problem Introduction And Brute Force Explanation

  • بررسی شبه‌کد قدم به قدم برای رویکرد Brute Force Pseudocode Walkthrough For Brute Force Approach

  • رویکرد ۲: راه حل بهینه Approach 2: Optimal solution

  • بررسی شبه‌کد قدم به قدم برای رویکرد بهینه Pseudocode Walkthrough For Optimal Approach

  • پیاده‌سازی کد Code Implementation

سوال ریاضی Airbnb: عدد تکی Airbnb Math Question: Single Number

  • مقدمه‌ای بر مسئله و رویکرد Brute Force Introduction to the problem and brute force approach

  • بررسی شبه‌کد قدم به قدم برای رویکرد Brute Force Pseudocode walkthrough for brute approach

  • رویکرد ۲: رویکرد بهتر Approach 2: better Approach

  • پیاده‌سازی کد Implementing the code

  • رویکرد ۳: رویکرد بهینه Approach 3: optimal approach

  • پیاده‌سازی رویکرد بهینه Implementing the optimal approach

سوال ریاضی آمازون: ربات به مبدا بازمی‌گردد (آسان) Amazon Math Question: Robot return to origin (Easy)

  • توضیح مسئله Explaining the problem

  • پیاده‌سازی کد Implementing the code

سوال ریاضی فیس‌بوک: جمع باینری (آسان) Facebook Math Question: Add Binary (Easy)

  • مقدمه‌ای بر مسئله Introduction to the problem

  • مثال‌هایی از جمع باینری Examples of binary additions

  • پیاده‌سازی شبه‌کد Pseudocode Implementation

  • بررسی شبه‌کد قدم به قدم Pseudocode Walkthrough

  • پیاده‌سازی کد Implementing the code

سوال جدول‌های هش / دیکشنری‌های گوگل: مجموع دو عدد (آسان) Google Hash Tables / Dictionaries question: Two Sum (Easy)

  • رویکرد ۱: مقدمه‌ای بر مسئله و رویکرد Brute Force Approach 1: Introduction to the problem and brute force approach

  • پیاده‌سازی شبه‌کد Brute Force Brute force Pseudocode Implementation

  • بررسی شبه‌کد قدم به قدم Pseudocode Walkthrough

  • رویکرد ۲: توضیح رویکرد بهینه Approach 2: Optimal Approach Explanation

  • بررسی شبه‌کد قدم به قدم Pseudocode Walkthrough

  • پیاده‌سازی کد Code Implementation

سوال جدول‌های هش / دیکشنری‌های گوگل: شامل تکرار است Google Hash Tables / Dictionaries question: Contains Duplicate

  • مقدمه‌ای بر مسئله و رویکردهای متعدد Introduction to the problem and multiple approaches

  • رویکرد بهینه Optimal Approach

  • پیاده‌سازی کد Code Implementation

سوال جدول‌های هش / دیکشنری‌های گوگل: عنصر اکثریت Google Hash Tables / Dictionaries question: Majority Element

  • درک شهودی رویکرد ۱ Approach 1 Intuition

  • بررسی شبه‌کد رویکرد ۱ قدم به قدم Approach 1 Pseudocode Walkthrough

  • رویکرد ۲ - درک شهودی عنصر اکثریت Approach 2 - Majority Element Intuition

  • پیاده‌سازی کد رویکرد ۲ Implementing Approach 2 code

  • درک شهودی رویکرد ۳ - راه حل بهینه Approach 3 Intuition - Optimal solution

  • بررسی رویکرد ۳ قدم به قدم - راه حل بهینه Approach 3 Walkthrough - Optimal solution

  • پیاده‌سازی رویکرد ۳ (رویکرد بهینه) Implementing Approach 3 (optimal approach)

سوال جدول‌های هش / دیکشنری‌ها: 4sum 2 (متوسط) Hash Tables / Dictionaries question: 4sum 2 (Medium)

  • توضیح Brute Force Brute force Explanation

  • بررسی شبه‌کد Brute Force قدم به قدم Brute Force Pseudocode Walkthrough

  • رویکرد ۲: رویکرد بهینه Approach 2: Optimal approach

  • پیاده‌سازی کد Implementing the code

سوال جدول‌های هش / دیکشنری‌های لینکدین: کوتاه‌ترین زیررشته پنجره‌ای (دشوار) Linkedin Hash Tables / Dictionaries question: Minimum Window Substring (Hard)

  • توضیح - کوتاه‌ترین زیررشته پنجره‌ای - بخش ۱ Explanation - Minimum Window Substring - part 1

  • توضیح - کوتاه‌ترین زیررشته پنجره‌ای - بخش ۲ Explanation - Minimum window substring - part 2

  • توضیح - کوتاه‌ترین زیررشته پنجره‌ای - بخش ۳ Explanation - Minimum window substring - part 3

  • پیاده‌سازی شبه‌کد Pseudocode Implementation

  • بررسی شبه‌کد قدم به قدم Pseudocode Walkthrough

  • پیاده‌سازی کد - کوتاه‌ترین زیررشته پنجره‌ای Code Implementation - Minimum Window Substring

سوال جدول‌های هش / دیکشنری‌های فیس‌بوک: گروه‌بندی آناگرام‌ها (متوسط) Facebook Hash Tables / Dictionaries question: Group Anagrams (Medium)

  • توضیح - گروه‌بندی آناگرام‌ها - متوسط #49 Explanation - Group Anagrams - Medium #49

  • کدنویسی پیاده‌سازی Coding the implementation

سوال جدول‌های هش / دیکشنری‌های مایکروسافت: کش LRU (متوسط) Microsoft Hash Tables / Dictionaries question: LRU Cache (Medium)

  • مقدمه‌ای بر مسئله Introduction to the problem

  • ورودی/خروجی برای مسئله Input/Output for the problem

  • درک شهودی پشت مسئله Intuition behind the problem

  • پیاده‌سازی شبه‌کد Pseudocode implementation

  • بررسی شبه‌کد قدم به قدم Pseudocode Walkthrough

سوال لیست پیوندی اپل: ادغام دو لیست مرتب‌شده (آسان) Apple Linked list question: Merge Two Sorted Lists (Easy)

  • توضیح - ادغام دو لیست مرتب‌شده - آسان #21 Explanation - Merge Two Sorted Lists - Easy #21

  • پیاده‌سازی شبه‌کد - ادغام دو لیست مرتب‌شده - آسان #21 Pseudocode Implementation - Merge Two Sorted Lists - Easy #21

  • بررسی قدم به قدم - ادغام دو لیست مرتب‌شده - آسان #21 Walkthrough - Merge Two Sorted Lists - Easy #21

  • کد - ادغام دو لیست مرتب‌شده - آسان #21 Code - Merge Two Sorted Lists - Easy #21

سوال لیست پیوندی آمازون: حلقه لیست پیوندی (متوسط) Amazon Linked list question: Linked list cycle (Medium)

  • توضیح - حلقه لیست پیوندی - آسان #141 Explanation - Linked List Cycle - Easy #141

  • درک شهودی - حلقه لیست پیوندی - آسان #141 Intuition - Linked List Cycle - Easy #141

  • بررسی قدم به قدم - حلقه لیست پیوندی - آسان #141 Walkthrough - Linked List Cycle - Easy #141

  • کد - حلقه لیست پیوندی - آسان #141 Code - Linked List Cycle - Easy #141

سوال لیست پیوندی مایکروسافت: معکوس کردن لیست پیوندی (متوسط) Microsoft Linked list question: Reverse linked list (Medium)

  • توضیح - معکوس کردن لیست پیوندی Explanation - Reverse Linked List

  • درک شهودی - معکوس کردن لیست پیوندی Intuition - Reverse Linked List

  • پیاده‌سازی و بررسی شبه‌کد - معکوس کردن لیست پیوندی pseudocode Implementation & Walkthrough - Reverse Linked List

  • پیاده‌سازی کد - معکوس کردن لیست پیوندی Implementing the code - Reverse Linked List

سوال لیست پیوندی ادوبی: جمع دو عدد (متوسط) Adobe Linked list question: Add two numbers (Medium)

  • توضیح - جمع دو عدد Explanation - Add Two Numbers

  • درک شهودی - جمع دو عدد Intuition - Add Two Numbers

  • پیاده‌سازی شبه‌کد - جمع دو عدد Pseudocode Implementation - Add Two Numbers

  • بررسی قدم به قدم - جمع دو عدد Walkthrough - Add Two Numbers

  • کد - جمع دو عدد Code - Add Two Numbers

سوال لیست پیوندی: حذف اُمین گره از انتهای لیست (متوسط) Linked list question: Remove Nth node from end of list (Medium)

  • توضیح - حذف اُمین گره از انتهای لیست Explanation - Remove Nth Node From End of List

  • درک شهودی - حذف اُمین گره از انتهای لیست Intuition - Remove Nth Node From End of List

  • بررسی قدم به قدم - حذف اُمین گره از انتهای لیست Walkthrough - Remove Nth Node From End of List

  • توضیح رویکرد ۲ - حذف اُمین گره از انتهای لیست Approach 2 Explanation - Remove Nth Node From End of List

  • بررسی رویکرد ۲ قدم به قدم - حذف اُمین گره از انتهای لیست Approach 2 Walkthrough - Remove Nth Node From End of List

  • کد - حذف اُمین گره از انتهای لیست Code - Remove Nth Node From End of List

سوال لیست پیوندی: لیست پیوندی زوج و فرد (متوسط) Linked list question: Odd Even linked list (Medium)

  • توضیح - لیست پیوندی زوج و فرد Explanation - Odd Even Linked List

  • درک شهودی - لیست پیوندی زوج و فرد Intuition - Odd Even Linked List

  • پیاده‌سازی - لیست پیوندی زوج و فرد Implementation - Odd Even Linked List

  • بررسی قدم به قدم - لیست پیوندی زوج و فرد Walkthrough - Odd Even Linked List

  • کد - لیست پیوندی زوج و فرد Code - Odd Even Linked List

سوال بک‌ترکینگ فیس‌بوک: زیرمجموعه‌ها (متوسط) Facebook Backtracking question: Subsets (Medium)

  • توضیح - زیرمجموعه‌ها Explanation - Subsets

  • توضیح راه حل آبشاری - زیرمجموعه‌ها Cascading solution explanation - Subsets

  • بررسی راه حل آبشاری قدم به قدم - زیرمجموعه‌ها Cascading solution walkthrough - Subsets

  • توضیح رویکرد بک‌ترکینگ ۲ - زیرمجموعه‌ها Backtracking Approach 2 explanation - Subsets

  • پیاده‌سازی کد Implementing the code

سوال بک‌ترکینگ آمازون: ترکیب حروف شماره تلفن (متوسط) Amazon Backtracking question: Letter Combination of a Phone Number (Medium)

  • توضیح - ترکیب حروف شماره تلفن Explanation - Letter Combinations of a Phone Number

  • درک شهودی - ترکیب حروف شماره تلفن Intuition - Letter Combinations of a Phone Number

  • بررسی قدم به قدم - ترکیب حروف شماره تلفن Walkthrough - Letter Combinations of a Phone Number

  • کد - ترکیب حروف شماره تلفن Code - Letter Combinations of a Phone Number

سوال بک‌ترکینگ مایکروسافت: جستجوی کلمه (متوسط) Microsoft Backtracking question: Word Search (Medium)

  • توضیح مسئله و درک شهودی Problem Explanation and intuition

سوال بک‌ترکینگ اوبر: مجموع ترکیبی (متوسط) Uber Backtracking question: Combination Sum (Medium)

  • توضیح مسئله Explanation the problem

  • درک شهودی پشت مسئله Intuition behind the problem

  • بررسی شبه‌کد قدم به قدم Walkthrough over the pseudocode

  • پیاده‌سازی کد Implementing the code

سوال بک‌ترکینگ بلومبرگ: افراز پالیندروم (متوسط) Bloomberg Backtracking question: Palindrome Partitioning (Medium)

  • درک شهودی پشت مسئله Intuition behind the problem

  • پیاده‌سازی شبه‌کد Pseudocode implementation

  • بررسی شبه‌کد قدم به قدم Walkthrough over pseudocode

  • پیاده‌سازی کد Implementing the code

سوال درخت‌های مایکروسافت: درخت‌های متقارن (آسان) Microsoft Trees question: Symmetric Trees (Easy)

  • توضیح مسئله Explaining the problem

  • درک شهودی پشت مسئله Intuition behind the problem

  • بررسی شبه‌کد قدم به قدم Walkthrough over pseudocode

  • پیاده‌سازی کد Implementing the code

سوال درخت‌های گوگل: حداکثر عمق یک درخت دودویی (آسان) Google Trees question: Maximum Depth of a Binary Tree (Easy)

  • توضیح مسئله Explaining the problem

  • درک شهودی و پیاده‌سازی شبه‌کد Intuition and pseudocode implementation

  • بررسی شبه‌کد قدم به قدم Walkthrough over pseudocode

  • پیاده‌سازی کد واقعی Implementing the real code

سوال درخت‌های آمازون: مجموع مسیر (آسان) Amazon Trees question: Path Sum (Easy)

  • توضیح مسئله Explaining the problem

  • درک شهودی پشت مسئله Intuition behind the problem

  • بررسی شبه‌کد قدم به قدم Walkthrough over pseudocode

  • کدنویسی راه حل Coding the solution

سوال درخت‌های فیس‌بوک: پایین‌ترین جد مشترک یک درخت دودویی (متوسط) Facebook Trees question: Lowest Common Ancestor of a Binary Tree (Medium)

  • توضیح مسئله Explaining the problem

  • درک شهودی پشت مسئله Intuition behind the problem

  • پیاده‌سازی شبه‌کد Pseudocode implementation

  • بررسی شبه‌کد قدم به قدم Walkthrough over pseudocode

  • کد: پایین‌ترین جد مشترک یک درخت دودویی Code: Lowest common ancestor of a binary tree

سوال درخت‌های گوگل: کا-اُمین کوچکترین عنصر در یک درخت جستجوی دودویی (BST) (متوسط) Google Trees question: Kth Smallest Element In a BST (Medium)

  • توضیح مسئله و رویکرد Brute Force Explaining the problem and brute force approach

  • توضیح راه حل بهینه‌شده Optimised Solution Explanation

  • پیاده‌سازی کد Implementing the code

سوال درخت‌های مایکروسافت: سریالی و دیسریالی کردن درخت دودویی (دشوار) Microsoft Trees question: Serialise And Deserialise Binary Tree (Hard)

  • توضیح "سریالی‌سازی" Explaining the "Serialisation"

  • بررسی شبه‌کد قدم به قدم (سریالی‌سازی) Walkthrough over pseudocode (Serialisation)

  • توضیح "دیسریالی‌سازی" Explaining the "Deserialisation"

  • بررسی شبه‌کد قدم به قدم (دیسریالی‌سازی) Walkthrough over pseudocode (Deserialisation)

سوال درخت‌های مایکروسافت: حداکثر مجموع مسیر درخت دودویی (دشوار) Microsoft Trees question: Binary Tree Maximum Path Sum (Hard)

  • توضیح مسئله Explaining the problem

  • درک شهودی پشت مسئله Intuition behind the problem

  • بررسی شبه‌کد قدم به قدم Walkthrough over pseudocode

  • پیاده‌سازی کد Implementing the code

سوال پشته گوگل: پشته حداقل (آسان) Google Stack Question: Min Stack (Easy)

  • توضیح Brute Force Brute force explanation

  • بررسی شبه‌کد قدم به قدم Walkthrough over pseudocode

  • توضیح راه حل بهینه Optimal solution explanation

  • پیاده‌سازی Implementation

سوال پشته آمازون: پرانتزهای معتبر (آسان) Amazon Stack Question: Valid Parenthesis (Easy)

  • توضیح مسئله Explaining the problem

  • درک شهودی پشت این مسئله Intuition behind this problem

  • پیاده‌سازی شبه‌کد Pseudocode Implementation

  • بررسی شبه‌کد قدم به قدم Walkthrough over the pseudocode

  • پیاده‌سازی کد Implementing the code

سوال پشته اپل: پیمایش سطح به سطح درخت دودویی (متوسط) Apple Stack Question: Binary Tree Level Order Traversal (Medium)

  • توضیح مسئله Explaining the problem

  • بررسی شبه‌کد قدم به قدم Walkthrough over pseudocode

  • پیاده‌سازی کد Implementing the code

سوال صف مایکروسافت: پیمایش سطح به سطح زیگ‌زاگ درخت دودویی (متوسط) Microsoft Queue Question: Binary Tree Zigzag Level Order Traversal (Medium)

  • توضیح مسئله Explaining the problem

  • درک شهودی پشت مسئله Intuition behind the problem

  • بررسی شبه‌کد قدم به قدم Walkthrough over pseudocode

  • توضیح راه حل بهینه Optimal solution explanation

  • بررسی شبه‌کد راه حل بهینه قدم به قدم Optimal solution pseudocode walkthrough

  • پیاده‌سازی کد Implementing the code

سوال پشته: پیمایش Postorder درخت دودویی (متوسط) Stack Question: Binary Tree Postorder Traversal (Medium)

  • توضیح مسئله Explanation of the problem

  • پیاده‌سازی کد Implementing the code

سوال برنامه‌نویسی پویا گوگل: دزد خانه (آسان) Google Dynamic Programming Question: House Robber (Easy)

  • توضیح پشت مسئله Explanation behind the problem

  • درک شهودی پشت مسئله Intuition behind the problem

  • رویکرد دوم: برنامه‌نویسی پویا از پایین به بالا (Bottom Up) 2nd Approach: Bottom Up dynamic programming

  • بررسی شبه‌کد قدم به قدم Walkthrough behind pseudocode

  • پیاده‌سازی کد Implementing the code

سوال برنامه‌نویسی پویا فیس‌بوک: بهترین زمان برای خرید و فروش سهام (آسان) Facebook Dynamic Programming Question: Best Time To Buy And Sell Stocks (Easy)

  • توضیح پشت مسئله Explanation behind the problem

  • درک شهودی پشت مسئله Intuition behind the problem

  • بررسی شبه‌کد قدم به قدم Walkthrough over pseudocode

  • توضیح راه حل بهینه Optimal solution explanation

  • کدنویسی راه حل Coding the solution

سوال برنامه‌نویسی پویا آمازون: بالارفتن از پله‌ها (آسان) Amazon Dynamic Programming Question: Climbing Stairs (Easy)

  • توضیح مسئله Explaining the problem

  • درک شهودی پشت مسئله Intuition behind the problem

  • پیاده‌سازی شبه‌کد Implementation the pseudocode

  • توضیح رویکرد از پایین به بالا (Bottom Up) Bottom up approach explanation

  • بررسی رویکرد از پایین به بالا (Bottom Up) قدم به قدم Bottom up approach walkthrough

  • بهینه‌سازی از پایین به بالا Bottom up optimisation

  • کد - بالارفتن از پله‌ها Code - Climbing Stairs

سوال برنامه‌نویسی پویا گوگل: تعویض سکه (متوسط) Google Dynamic Programming Question: Coin Change (Medium)

  • توضیح مسئله Explaining the problem

  • درک شهودی پشت مسئله Intuition behind the problem

  • پیاده‌سازی و بهینه‌سازی شبه‌کد Pseudocode Implementation and optimisation

  • توضیح رویکرد از پایین به بالا (Bottom Up) Bottom up approach explanation

  • پیاده‌سازی کد Implementing the code

سوال برنامه‌نویسی پویا بلومبرگ: مسیرهای منحصر به فرد (متوسط) Bloomberg Dynamic Programming Question: Unique Paths (Medium)

  • توضیح مسئله Explaining the problem

  • پیاده‌سازی و بررسی شبه‌کد قدم به قدم Pseudocode Implementation and walkthrough

  • پیاده‌سازی کد Implementing the code

سوال برنامه‌نویسی پویا مایکروسافت: طولانی‌ترین زیررشته پالیندرومی (متوسط) Microsoft Dynamic Programming Question: Longest Palindromic Substring (Medium)

  • توضیح مسئله Explanation of the problem

  • درک شهودی اولیه پشت مسئله Initial Intuition behind the problem

  • بهینه‌سازی راه حل قبلی Optimising the previous solution

  • پیاده‌سازی شبه‌کد Pseudocode Implementation

  • بررسی شبه‌کد قدم به قدم Walkthrough over pseudocode

  • پیاده‌سازی کد Implementing the code

سوال برنامه‌نویسی پویا آمازون: جمع‌آوری آب باران (دشوار) Amazon Dynamic Programming Question: Trapping Rain Water (Hard)

  • توضیح مسئله Explaining the problem

  • کدنویسی پیاده‌سازی Coding the implementation

نمایش نظرات

آموزش ۵۰ روز لیت‌کد با سی‌شارپ: الگوریتم‌ها و آمادگی برای مصاحبه‌های برنامه‌نویسی
جزییات دوره
23.5 hours
222
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
373
4.5 از 5
ندارد
دارد
دارد
Bit Punch
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Bit Punch Bit Punch

مهندس نرم افزار (کارمند سابق گوگل)