آموزش ساختارهای داده و الگوریتم‌های ضروری با استفاده از C++ (2023)

Data Structures & Algorithms Essentials using C++ (2023)

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: با تسلط بر ساختارهای داده‌ها، الگوریتم‌ها و حل مسئله با استفاده از مفاهیم هسته‌ای C++ و اجزای داخلی درختان ساختارهای داده، فهرست‌های پیوندی، پشته‌ها، نمودارها، تمام ساختارهای داده را از ابتدا بسازید مبانی برنامه‌نویسی شی‌گرا، نیروی بی‌رحم و تکنیک‌های بهینه‌سازی، تحلیل پیچیدگی فضا توابع هش، بازگردانی مدیریت برخورد و حافظه پویا و اشاره گرها کتابخانه DS خود را ایجاد کنید! پروژه مبانی کتابخانه قالب استاندارد C++ - طراحی و پیاده سازی سبد خرید پیش نیازها: آشنایی با هر یک از زبان های برنامه نویسی توانایی درک و نوشتن کد (ترجیحا C/C++) درک حلقه ها، متغیرها، عبارات شرطی

آیا شما یک مبتدی هستید که به دنبال ورود به دنیای داده‌های ساختاری هستید یا برنامه‌نویس متوسطی هستید که نمی‌دانید پشت یک Hash-table چه اتفاقی می‌افتد؟


به الگوریتم‌های ساختارهای داده خوش آمدید، دوره آموزشی ضروری - تنها دوره‌ای که برای درک مفاهیم اصلی در پس ساختارهای داده به آن نیاز دارید، پایه‌های برنامه‌نویسی محکمی را با استفاده از C++ بسازید. این دوره توسط یک مربی خبره Prateek Narang از Google تدریس می‌شود که نه تنها یک مهندس نرم‌افزار است، بلکه هزاران دانش‌آموز را برای تبدیل شدن به برنامه‌نویسان بزرگ راهنمایی کرده است و به دلیل مهارت‌های آموزشی شگفت‌انگیزش در Udemy رتبه برتر را دارد.

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

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

مفاهیم برنامه نویسی
پوشش بیت

مبانی برنامه نویسی شی گرا

حافظه پویای اشاره گر (C++)

بازگشت

بنیاد ساختارهای داده

آرایه، آرایه دو بعدی، رشته ها، بردارها

لیست‌های پیوندی، پشته‌ها، صف‌ها

درختان، BST، تلاش‌ها

انبوه/صف های اولویت دار

هش جداول، برخورد با برخورد

نمودارها

بنیاد الگوریتم‌ها

Brute Force، Backtracking

مرتب سازی جستجو

Divide Conquer

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


این دوره برای برنامه نویسان مبتدی متوسط ​​طراحی شده است. ما سعی می‌کنیم موضوعات نه چندان آسان را با توضیحات بصری، سخنرانی‌های ویدئویی تعاملی با ده‌ها الگوی رفتاری ساده جلوه دهیم؛) دوره با یک پروژه کوچک نهایی به پایان می‌رسد - یک برنامه خط فرمان برای یک سبد خرید آنلاین که اصولی از ساختارهای داده برنامه‌نویسی شی گرا را ترکیب می‌کند.

بر خلاف بسیاری از مربیان، ما فروشنده یا بازاریاب نیستیم. وظیفه من این است که به شما کمک کنم تا اصولی قوی در برنامه نویسی ایجاد کنید تا یک توسعه دهنده موفق باشید. از طریق Udemy Coding Minutes، من این دوره را با کسری از هزینه اصلی آن در اختیار شما قرار می دهم تا هرکسی که علاقه مند به یادگیری است بتواند مهارت های خود را به سطح بالاتری برساند. بنابراین امیدوارم امروز ثبت نام کنید و من شما را در دوره می بینم.


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

معرفی Introduction

  • گرایش دوره! Course Orientation!

  • حداکثر امتیاز را از این دوره بگیرید؟ Get maximum out of this course?

  • حداکثر امتیاز را از این دوره بگیرید؟ Get maximum out of this course?

معرفی Introduction

  • گرایش دوره! Course Orientation!

مخزن کد Code Repository

  • مخزن کد C++ C++ Code Repository

  • مخزن کد C++ C++ Code Repository

  • مخزن کد جاوا Java Code Repository

  • راه حل های تمرین Exercise Solutions

  • راه حل های تمرین Exercise Solutions

مخزن کد Code Repository

  • مخزن کد جاوا Java Code Repository

آرایه ها Arrays

  • معرفی آرایه Array Introduction

  • معرفی آرایه Array Introduction

  • آرایه ها - ورودی، خروجی، به روز رسانی Arrays - Input, Ouput, Update

  • آرایه ها - ورودی، خروجی، به روز رسانی Arrays - Input, Ouput, Update

  • آرایه ها و توابع - عبور از مرجع Arrays & Functions - Pass by Reference

  • آرایه ها و توابع - عبور از مرجع Arrays & Functions - Pass by Reference

  • نکته ای در مورد پیچیدگی زمان فضا! A Note about Space Time Complexity!

  • نکته ای در مورد پیچیدگی زمان فضا! A Note about Space Time Complexity!

  • جستجوی خطی Linear Search

  • جستجوی باینری Binary Search

  • کد جستجوی باینری Binary Search Code

  • معکوس آرایه Array Reverse

  • جفت چاپ Printing Pairs

  • چاپ زیرآرایه Printing Subarrays

  • چاپ زیرآرایه Printing Subarrays

  • سابرای سام - I (نیروی بی رحم) Subarray Sum - I (Brute Force)

  • سابرای سام - I (نیروی بی رحم) Subarray Sum - I (Brute Force)

  • سابرای سام - II (مجموع پیشوند) Subarray Sum - II (Prefix Sums)

  • جمع سابرای - III (الگوریتم کادان) Subarray Sum - III (Kadane's Algorithm)

  • نکته ای در مورد تمرین های کدنویسی! A Note about Coding Exercises!

  • مقدمه بردارها Vectors Introduction

  • بردارها (دمو) Vectors (Demo)

  • بردارها (دمو) Vectors (Demo)

  • بزرگترین عنصر Largest Element

  • بزرگترین عنصر Largest Element

  • راه حل - بزرگترین عنصر Solution - Largest Element

  • راه حل - بزرگترین عنصر Solution - Largest Element

  • حداکثر مجموع سابرای Maximum Subarray Sum

  • حداکثر مجموع سابرای Maximum Subarray Sum

  • راه حل - حداکثر مجموع زیرآیند Solution - Maximum Subarray Sum

  • کران پایین Lower Bound

  • کران پایین Lower Bound

  • راه حل - کران پایین Solution - Lower Bound

  • مجموع جفت مرتب شده Sorted Pair Sum

  • K-Rotate K-Rotate

  • راه حل - K چرخش Solution - K Rotate

  • راه حل - K چرخش Solution - K Rotate

  • آزمون آرایه ها Arrays Quiz

آرایه ها Arrays

  • جستجوی خطی Linear Search

  • جستجوی باینری Binary Search

  • کد جستجوی باینری Binary Search Code

  • معکوس آرایه Array Reverse

  • جفت چاپ Printing Pairs

  • سابرای سام - II (مجموع پیشوند) Subarray Sum - II (Prefix Sums)

  • جمع سابرای - III (الگوریتم کادان) Subarray Sum - III (Kadane's Algorithm)

  • نکته ای در مورد تمرین های کدنویسی! A Note about Coding Exercises!

  • مقدمه بردارها Vectors Introduction

  • راه حل - حداکثر مجموع زیرآیند Solution - Maximum Subarray Sum

  • راه حل - کران پایین Solution - Lower Bound

  • مجموع جفت مرتب شده Sorted Pair Sum

  • K-Rotate K-Rotate

  • آزمون آرایه ها Arrays Quiz

الگوریتم های مرتب سازی اولیه Basic Sorting Algorithms

  • مقدمه مرتب سازی Sorting Introduction

  • مقدمه مرتب سازی Sorting Introduction

  • مرتب سازی حباب Bubble Sort

  • کد مرتب سازی حباب Bubble Sort Code

  • کد مرتب سازی حباب Bubble Sort Code

  • مرتب سازی حباب بهینه شده Optimized Bubble Sort

  • مرتب سازی درج Insertion Sort

  • مرتب سازی درج Insertion Sort

  • درج کد مرتب سازی Insertion Sort Code

  • درج کد مرتب سازی Insertion Sort Code

  • انتخاب مرتب سازی Selection Sort

  • کد مرتب سازی انتخابی Selection Sort Code

  • مرتب سازی و مقایسه داخلی Inbuilt Sort & Comparators

  • مرتب سازی و مقایسه داخلی Inbuilt Sort & Comparators

  • مرتب سازی شمارش Counting Sort

  • شمارش کد مرتب سازی Counting Sort Code

  • شمارش کد مرتب سازی Counting Sort Code

  • مرتب سازی با مقایسه کننده Sorting with Comparator

  • مرتب سازی با مقایسه کننده Sorting with Comparator

  • مرتب سازی نقاط دکارتی Sorting Cartesian Points

  • مرتب سازی نقاط دکارتی Sorting Cartesian Points

  • چاپستیک Chopsticks

  • پادشاهی دفاعی Defense Kingdom

الگوریتم های مرتب سازی اولیه Basic Sorting Algorithms

  • مرتب سازی حباب Bubble Sort

  • مرتب سازی حباب بهینه شده Optimized Bubble Sort

  • انتخاب مرتب سازی Selection Sort

  • کد مرتب سازی انتخابی Selection Sort Code

  • مرتب سازی شمارش Counting Sort

  • چاپستیک Chopsticks

  • پادشاهی دفاعی Defense Kingdom

آرایه های کاراکتر/رشته ها Character Arrays/Strings

  • معرفی آرایه های کاراکتر Character Arrays Introduction

  • استفاده از cin.get() Using cin.get()

  • استفاده از cin.get() Using cin.get()

  • ارقام و فضاها Digits & Spaces

  • ارقام و فضاها Digits & Spaces

  • استفاده از cin.getline() Using cin.getline()

  • کوتاه ترین مسیر Shortest Path

  • کپی رشته، مقایسه، Concat! String Copy, Compare, Concat!

  • کپی رشته، مقایسه، Concat! String Copy, Compare, Concat!

  • راه حل: بزرگترین رشته Solution : Largest String

  • پالیندروم را بررسی کنید Check Palindrome

  • پالیندروم را بررسی کنید Check Palindrome

  • توجه: کلاس رشته Note : String Class

  • کلاس رشته String Class

  • فشرده سازی رشته String Compression

  • رمزگذاری طول را اجرا کنید Run Length Encoding

  • جایگشت هستند Are Permutation

  • موارد تکراری را حذف کنید Remove Duplicates

  • یافتن صدادار Vowel Find

  • رشته باینری به عدد Binary String to Number

  • رشته باینری به عدد Binary String to Number

آرایه های کاراکتر/رشته ها Character Arrays/Strings

  • معرفی آرایه های کاراکتر Character Arrays Introduction

  • استفاده از cin.getline() Using cin.getline()

  • کوتاه ترین مسیر Shortest Path

  • راه حل: بزرگترین رشته Solution : Largest String

  • توجه: کلاس رشته Note : String Class

  • کلاس رشته String Class

  • فشرده سازی رشته String Compression

  • رمزگذاری طول را اجرا کنید Run Length Encoding

  • جایگشت هستند Are Permutation

  • موارد تکراری را حذف کنید Remove Duplicates

  • یافتن صدادار Vowel Find

آرایه های دو بعدی 2D Arrays

  • مقدمه ای بر آرایه های دو بعدی Introduction to 2D Arrays

  • مقدمه ای بر آرایه های دو بعدی Introduction to 2D Arrays

  • مبانی آرایه دو بعدی 2D Array Basics

  • مبانی آرایه دو بعدی 2D Array Basics

  • آرایه های کاراکتر دو بعدی 2D Character Arrays

  • چاپ مارپیچ Spiral Print

  • چاپ مارپیچ Spiral Print

  • چاپ موج! Wave Print!

  • کد جستجوی آرایه مرتب شده Sorted Array Search Code

  • کد جستجوی آرایه مرتب شده Sorted Array Search Code

  • درختان انبه Mango Trees

  • درختان انبه Mango Trees

  • مثلث پاسکال Pascal's Triangle

  • جستجوی آرایه مرتب شده Sorted Array Search

  • جمع زیر ماتریس Submatrix Sum

آرایه های دو بعدی 2D Arrays

  • آرایه های کاراکتر دو بعدی 2D Character Arrays

  • چاپ موج! Wave Print!

  • مثلث پاسکال Pascal's Triangle

  • جستجوی آرایه مرتب شده Sorted Array Search

  • جمع زیر ماتریس Submatrix Sum

اشاره گرها و حافظه پویا Pointers & Dynamic Memory

  • آدرس اپراتور Address of Operator

  • اشاره گرها Pointers

  • اشاره گرها Pointers

  • اپراتور عدم ارجاع Dereference Operator

  • اپراتور عدم ارجاع Dereference Operator

  • متغیرهای مرجع Reference Variables

  • متغیرهای مرجع Reference Variables

  • عبور از مرجع - متغیر مرجع Pass by Reference - Reference Variable

  • عبور از مرجع - اشاره گر Pass by Reference - Pointers

  • عبور از مرجع - اشاره گر Pass by Reference - Pointers

  • تخصیص حافظه پویا Dynamic Memory Allocation

  • تخصیص حافظه پویا Dynamic Memory Allocation

  • استفاده از New & Delete Using New & Delete

  • استفاده از New & Delete Using New & Delete

  • آرایه پویا دو بعدی 2D Dynamic Array

اشاره گرها و حافظه پویا Pointers & Dynamic Memory

  • آدرس اپراتور Address of Operator

  • عبور از مرجع - متغیر مرجع Pass by Reference - Reference Variable

  • آرایه پویا دو بعدی 2D Dynamic Array

ساختار داده برداری Vector Data Structure

  • بردار Vector

  • بردار Vector

  • بردارها - چگونه رشد می کنند؟ Vectors - How they grow?

  • با استفاده از ظرف برداری Using Vector Container

  • با استفاده از ظرف برداری Using Vector Container

  • وکتور دو بعدی با استفاده از STL 2D Vector using STL

  • وکتور دو بعدی با استفاده از STL 2D Vector using STL

  • کلاس وکتور - I Vector Class - I

  • کلاس وکتور - II Vector Class - II

  • کلاس وکتور - II Vector Class - II

  • کلاس وکتور - III Vector Class - III

  • فایل‌های سرصفحه و کلاس‌های الگو Header Files & Template Classes

  • جستجوی داخلی Inbuilt Searching

  • جستجوی داخلی Inbuilt Searching

  • مرتب سازی بردار پیچیده! Sorting a Complex Vector!

  • مرتب سازی بردار پیچیده! Sorting a Complex Vector!

  • دسته بندی کابین ها! Sorting Cabs!

  • دسته بندی کابین ها! Sorting Cabs!

  • میوه ها را مرتب کنید! Sort Fruits!

  • میوه ها را مرتب کنید! Sort Fruits!

  • چرخش تصویر Rotate Image

  • صفر بسازید Make Zeroes

  • صفر بسازید Make Zeroes

ساختار داده برداری Vector Data Structure

  • بردارها - چگونه رشد می کنند؟ Vectors - How they grow?

  • کلاس وکتور - I Vector Class - I

  • کلاس وکتور - III Vector Class - III

  • فایل‌های سرصفحه و کلاس‌های الگو Header Files & Template Classes

  • چرخش تصویر Rotate Image

دستکاری بیت Bit Manipulation

  • اپراتورهای بیتی Bitwise Operators

  • Shift چپ و راست Shift Left Shift & Right Shift

  • زوج فرد Odd Even

  • زوج فرد Odd Even

  • آن را کمی دریافت کنید Get ith Bit

  • بیت را تنظیم کنید Set ith Bit

  • بیت را پاک کن Clear ith Bit

  • بیت آن را به روز کنید Update ith Bit

  • بیت آن را به روز کنید Update ith Bit

  • آخرین بیت ها را پاک کنید Clear Last i Bits

  • آخرین بیت ها را پاک کنید Clear Last i Bits

  • پاک کردن محدوده بیت ها Clear Range of Bits

  • پاک کردن محدوده بیت ها Clear Range of Bits

  • بیت ها را جایگزین کنید Replace Bits

  • دو قدرت Two Power

  • دو قدرت Two Power

  • تعداد بیت ها Count Bits

  • تعداد بیت - هک Count Bits - Hack

  • تعداد بیت - هک Count Bits - Hack

  • توان سریع Fast Exponentiation

  • آن را باینری کنید! Make it Binary!

  • Xoring Xoring

  • توان مدول Modulo Exponentiation

  • سطوح زمین! Earth Levels!

  • سطوح زمین! Earth Levels!

  • پرس و جوهای جمع زیر مجموعه Subset Sum Queries

دستکاری بیت Bit Manipulation

  • اپراتورهای بیتی Bitwise Operators

  • Shift چپ و راست Shift Left Shift & Right Shift

  • آن را کمی دریافت کنید Get ith Bit

  • بیت را تنظیم کنید Set ith Bit

  • بیت را پاک کن Clear ith Bit

  • بیت ها را جایگزین کنید Replace Bits

  • تعداد بیت ها Count Bits

  • توان سریع Fast Exponentiation

  • آن را باینری کنید! Make it Binary!

  • Xoring Xoring

  • توان مدول Modulo Exponentiation

  • پرس و جوهای جمع زیر مجموعه Subset Sum Queries

مبانی بازگشت Recursion Basics

  • مقدمه بازگشت Recursion Introduction

  • فاکتوریل Factorial

  • سری فیبوناچی Fibonacci Series

  • بررسی آرایه مرتب شده! Sorted Array Check!

  • درک جهت های بازگشتی Understanding Recursion Directions

  • اولین اتفاق First Occurence

  • اولین کد وقوع First Occurence Code

  • اولین کد وقوع First Occurence Code

  • آخرین وقوع Last Occurence

  • آخرین کد وقوع Last Occurence Code

  • آخرین کد وقوع Last Occurence Code

  • همه اتفاقات! All Occurence!

  • چاپ افزایش اعداد Print Increasing Numbers

  • چاپ افزایش اعداد Print Increasing Numbers

  • تابع توان Power Function

  • عملکرد قدرت بهینه شده است Power Function Optimised

  • مرتب سازی حباب Bubble Sort

  • مرتب سازی حباب Bubble Sort

  • املای اعداد Number Spell

  • املای اعداد Number Spell

  • مشکل کاشی کاری Tiling Problem!

  • حل مشکل کاشی کاری Tiling Problem Solution

  • حل مشکل کاشی کاری Tiling Problem Solution

  • رشته های باینری! Binary Strings!

  • رشته های باینری! Binary Strings!

  • راه حل رشته های باینری Binary Strings Solution

  • مهمانی دوستان! Friends' Party!

  • راه حل مهمانی دوستان Friend's Party Solution

مبانی بازگشت Recursion Basics

  • مقدمه بازگشت Recursion Introduction

  • فاکتوریل Factorial

  • سری فیبوناچی Fibonacci Series

  • بررسی آرایه مرتب شده! Sorted Array Check!

  • درک جهت های بازگشتی Understanding Recursion Directions

  • اولین اتفاق First Occurence

  • آخرین وقوع Last Occurence

  • همه اتفاقات! All Occurence!

  • تابع توان Power Function

  • عملکرد قدرت بهینه شده است Power Function Optimised

  • مشکل کاشی کاری Tiling Problem!

  • راه حل رشته های باینری Binary Strings Solution

  • مهمانی دوستان! Friends' Party!

  • راه حل مهمانی دوستان Friend's Party Solution

تقسیم کن و غلبه کن Divide & Conquer

  • ادغام مرتب سازی Merge Sort

  • ادغام مرتب سازی Merge Sort

  • کد مرتب سازی را ادغام کنید Merge Sort Code

  • مرتب سازی سریع Quick Sort

  • مرتب سازی سریع Quick Sort

  • کد مرتب سازی سریع Quick Sort Code

  • کد مرتب سازی سریع Quick Sort Code

  • جستجوی باینری با استفاده از Recursion! Binary Search using Recursion!

  • چرخش آرایه جستجو Rotate Array Search

  • چرخش آرایه جستجو Rotate Array Search

  • کد جستجوی چرخشی Rotated Search Code

  • کد جستجوی چرخشی Rotated Search Code

  • ادغام آرایه دو بعدی 2D Array Merge

تقسیم کن و غلبه کن Divide & Conquer

  • کد مرتب سازی را ادغام کنید Merge Sort Code

  • جستجوی باینری با استفاده از Recursion! Binary Search using Recursion!

  • ادغام آرایه دو بعدی 2D Array Merge

عقب نشینی Backtracking

  • مقدمه عقبگرد Backtracking Introduction

  • مقدمه عقبگرد Backtracking Introduction

  • بک ترک در کد آرایه ها Backtracking on Arrays Code

  • بک ترک در کد آرایه ها Backtracking on Arrays Code

  • Backracking در کد بردارها Bactracking on Vectors Code

  • Backracking در کد بردارها Bactracking on Vectors Code

  • یافتن زیر مجموعه ها Finding Subsets

  • یافتن کد زیر مجموعه ها Finding Subsets Code

  • سفارش زیر مجموعه ها Ordering Subsets

  • سفارش زیر مجموعه ها Ordering Subsets

  • جایگشت Permutations

  • مشکل N-Queen N-Queen Problem

  • مشکل N-Queen N-Queen Problem

  • کد N-Queen N-Queen Code

  • کد N-Queen N-Queen Code

  • N-Queen All Ways N-Queen All Ways

  • N-Queen All Ways N-Queen All Ways

  • راه های شبکه Grid Ways

  • راه های شبکه Grid Ways

  • راه های شبکه - ترفند ریاضی! Grid Ways - Math Trick!

  • راه های شبکه - ترفند ریاضی! Grid Ways - Math Trick!

  • سودوکو Sudoku

  • کد سودوکو Sudoku Code

  • N-Queen Ways N-Queen Ways

  • موش و موش Rat and Mice

  • مشکل شکست کلمه Word Break Problem

  • زیر مجموعه منحصر به فرد Unique Subset

  • زیر مجموعه منحصر به فرد Unique Subset

  • جستجوی کلمه Word Search

عقب نشینی Backtracking

  • یافتن زیر مجموعه ها Finding Subsets

  • یافتن کد زیر مجموعه ها Finding Subsets Code

  • جایگشت Permutations

  • سودوکو Sudoku

  • کد سودوکو Sudoku Code

  • N-Queen Ways N-Queen Ways

  • موش و موش Rat and Mice

  • مشکل شکست کلمه Word Break Problem

  • جستجوی کلمه Word Search

تحلیل پیچیدگی فضا و زمان Space & Time Complexity Analysis

  • مقدمه پیچیدگی فضا زمان Space Time Complexity Introduction

  • مقدمه پیچیدگی فضا زمان Space Time Complexity Introduction

  • تجزیه و تحلیل تجربی Experimental Analysis

  • تجزیه و تحلیل تجربی Experimental Analysis

  • نماد O بزرگ Big O Notation

  • حلقه های تو در تو Nested Loops

  • حلقه های تو در تو Nested Loops

  • مثال حلقه ها Loops Example

  • مثال حلقه ها Loops Example

  • تجزیه و تحلیل مرتب سازی حباب Analysis of Bubble Sort

  • تجزیه و تحلیل مرتب سازی حباب Analysis of Bubble Sort

  • تجزیه و تحلیل جستجوی باینری Analysis of Binary Search

  • تجزیه و تحلیل مرتب سازی ادغام Merge Sort Analysis

  • تجزیه و تحلیل مرتب سازی ادغام Merge Sort Analysis

  • پیچیدگی زمانی برای مسائل بازگشتی Time Complexity For Recursive Problems

تحلیل پیچیدگی فضا و زمان Space & Time Complexity Analysis

  • نماد O بزرگ Big O Notation

  • تجزیه و تحلیل جستجوی باینری Analysis of Binary Search

  • پیچیدگی زمانی برای مسائل بازگشتی Time Complexity For Recursive Problems

برنامه نویسی شی گرا Object Oriented Programming

  • مقدمه ای بر OOPS Introduction to OOPS

  • OOPS - کلاس ها و اشیاء OOPS - Classes & Objects

  • نسخه ی نمایشی کد Code Demo

  • نسخه ی نمایشی کد Code Demo

  • گیرنده و تنظیم کننده Getters & Setters

  • سازنده/اولیه شی Constructor / Object Initialiastion

  • سازنده کپی Copy Constructor

  • سازنده کپی Copy Constructor

  • کپی کم عمق و عمیق Shallow & Deep Copy

  • کپی کم عمق و عمیق Shallow & Deep Copy

  • اپراتور تخصیص کپی Copy Assignment Operator

  • ویرانگر Destructor

  • ویرانگر Destructor

  • سبد خرید با استفاده از OOPS Shopping Cart using OOPS

برنامه نویسی شی گرا Object Oriented Programming

  • مقدمه ای بر OOPS Introduction to OOPS

  • OOPS - کلاس ها و اشیاء OOPS - Classes & Objects

  • گیرنده و تنظیم کننده Getters & Setters

  • سازنده/اولیه شی Constructor / Object Initialiastion

  • اپراتور تخصیص کپی Copy Assignment Operator

  • سبد خرید با استفاده از OOPS Shopping Cart using OOPS

لیست پیوند شده Linked List

  • فهرست پیوندی معرفی Linked List Introduction

  • فهرست پیوندی معرفی Linked List Introduction

  • جلو فشار Push Front

  • فشار به عقب Push Back

  • فشار به عقب Push Back

  • چاپ Print

  • چاپ Print

  • درج کنید Insert

  • جستجوکردن Searching

  • جستجوی بازگشتی Recursive Search

  • جستجوی بازگشتی Recursive Search

  • حذف Deletion

  • حذف Deletion

  • پاپ جبهه Pop Front

  • پاپ جبهه Pop Front

  • دم را حذف کنید Delete Tail

  • معکوس کردن یک لیست پیوندی Reverse a Linked List

  • معکوس کردن یک لیست پیوندی Reverse a Linked List

  • یک کد لیست پیوندی را معکوس کنید Reverse a Linked List Code

  • Kth آخرین عنصر Kth Last Element

  • Kth آخرین عنصر Kth Last Element

  • ادغام جایگزین Alternate Merge

  • ادغام جایگزین Alternate Merge

  • مرتب‌سازی حبابی در فهرست پیوندی Bubble Sort on Linked List

  • مرتب‌سازی حبابی در فهرست پیوندی Bubble Sort on Linked List

لیست پیوند شده Linked List

  • جلو فشار Push Front

  • درج کنید Insert

  • دم را حذف کنید Delete Tail

  • یک کد لیست پیوندی را معکوس کنید Reverse a Linked List Code

پشته ها Stacks

  • پشته ساختار داده Stack Data Structure

  • پشته ساختار داده Stack Data Structure

  • پشته پیاده سازی Stack Implementations

  • پشته پیاده سازی Stack Implementations

  • با استفاده از لیست پیوندی پشته کنید Stack using Linked List

  • با استفاده از لیست پیوندی پشته کنید Stack using Linked List

  • پشته با استفاده از Vector Stack using Vector

  • پشته STL Stack STL

  • پشته STL Stack STL

  • Stack Insert At Bottom Challenge! Stack Insert At Bottom Challenge!

  • Stack Insert At Bottom Challenge! Stack Insert At Bottom Challenge!

  • به صورت بازگشتی یک پشته را معکوس کنید Recursively Reverse a Stack

  • با استفاده از پشته یک عدد را معکوس کنید Reverse a number using stack

  • با استفاده از پشته یک عدد را معکوس کنید Reverse a number using stack

  • مشکل دهانه سهام Stock Span Problem

  • راه حل دهانه سهام Stock Span Solution

  • راه حل دهانه سهام Stock Span Solution

  • عنصر بزرگ بعدی Next Greater Element

  • پرانتزهای تکراری Duplicate Parentheses

  • حداکثر مساحت مستطیل در هیستوگرام Maximum Rectangular Area in Histogram

  • حداکثر مساحت مستطیل در هیستوگرام Maximum Rectangular Area in Histogram

پشته ها Stacks

  • پشته با استفاده از Vector Stack using Vector

  • به صورت بازگشتی یک پشته را معکوس کنید Recursively Reverse a Stack

  • مشکل دهانه سهام Stock Span Problem

  • عنصر بزرگ بعدی Next Greater Element

  • پرانتزهای تکراری Duplicate Parentheses

صف ها Queues

  • معرفی صف Queue Introduction

  • اجرای صف Queue Implementation

  • صف با استفاده از آرایه دایره ای Queue using Circular Array

  • صف STL Queue STL

  • صف STL Queue STL

  • پشته با استفاده از 2 صف Stack using 2 Queues

  • پشته با استفاده از 2 صف Stack using 2 Queues

  • پشته با استفاده از 2 کد صف Stack using 2 Queues Code

  • پشته با استفاده از 2 کد صف Stack using 2 Queues Code

  • اولین نامه بدون تکرار First Non-Repeating Letter

  • دو نیمه از یک صف را به هم بزنید Interleave two halves of a queue

  • دو نیمه از یک صف را به هم بزنید Interleave two halves of a queue

صف ها Queues

  • معرفی صف Queue Introduction

  • اجرای صف Queue Implementation

  • صف با استفاده از آرایه دایره ای Queue using Circular Array

  • اولین نامه بدون تکرار First Non-Repeating Letter

درخت دودویی Binary Tree

  • معرفی درخت دودویی Binary Tree Introduction

  • معرفی درخت دودویی Binary Tree Introduction

  • ساخت پیش سفارش درخت Build Tree Preorder

  • پیمایش پیش‌سفارش کنید Preorder Traversal

  • پیمایش پیش‌سفارش کنید Preorder Traversal

  • پیمایش Inorder Inorder Traversal

  • پیمایش Inorder Inorder Traversal

  • پیمایش سفارش پست Postorder Traversal

  • چاپ سفارش سطح Level Order Print

  • چاپ سفارش سطح Level Order Print

  • کد چاپ سفارش سطح Level Order Print Code

  • ساخت سفارش سطح Level Order Build

  • کد ساخت سطح سفارش Level Order Build Code

  • کد ساخت سطح سفارش Level Order Build Code

  • ارتفاع درخت Height of Tree

  • ارتفاع درخت Height of Tree

  • سطح K K-th Level

  • مجموع گره ها Sum of Nodes

  • مجموع گره ها Sum of Nodes

  • قطر درخت Tree Diameter

  • قطر درخت Tree Diameter

  • قطر کد-I Diameter Code-I

  • قطر کد-I Diameter Code-I

  • قطر کد-II Diameter Code-II

  • قطر کد-II Diameter Code-II

  • حداقل عمق Min Depth

  • درخت متقارن Symmetric Tree

  • درخت متقارن Symmetric Tree

  • درخت بیان Expression Tree

  • نیمه گره ها را حذف کنید Remove Half Nodes

  • نیمه گره ها را حذف کنید Remove Half Nodes

  • مجموع مسیر هدف Target Path Sum

  • مجموع مسیر هدف Target Path Sum

درخت دودویی Binary Tree

  • ساخت پیش سفارش درخت Build Tree Preorder

  • پیمایش سفارش پست Postorder Traversal

  • کد چاپ سفارش سطح Level Order Print Code

  • ساخت سفارش سطح Level Order Build

  • سطح K K-th Level

  • حداقل عمق Min Depth

  • درخت بیان Expression Tree

درخت جستجوی باینری Binary Search Tree

  • مقدمه BST BST Introduction

  • مقدمه BST BST Introduction

  • ایجاد BST BST Creation

  • ایجاد BST BST Creation

  • توجه داشته باشید! Note!

  • جستجوکردن Searching

  • جستجوکردن Searching

  • مفهوم حذف Deletion Concept

  • مفهوم حذف Deletion Concept

  • کد حذف Deletion Code

  • کد حذف Deletion Code

  • چالش - چاپ در محدوده Challenge - Print in Range

  • چالش - چاپ در محدوده Challenge - Print in Range

  • مسیرهای ریشه به برگ Root To Leaf Paths

  • آینه BST Mirror a BST

  • IsBST؟ IsBST?

  • IsBST؟ IsBST?

  • حذف در BST Delete in BST

  • حذف در BST Delete in BST

درخت جستجوی باینری Binary Search Tree

  • توجه داشته باشید! Note!

  • جستجوکردن Searching

  • مسیرهای ریشه به برگ Root To Leaf Paths

  • آینه BST Mirror a BST

انبوه/صف اولویت Heaps / Priority Queue

  • مقدمه ای بر Heap Introduction to Heap

  • مقدمه ای بر Heap Introduction to Heap

  • هیپ در مقابل دیگر ساختار داده Heap vs other Data Structure

  • Heaps به عنوان CBT Heaps as CBT

  • Heaps به عنوان CBT Heaps as CBT

  • Heaps به عنوان آرایه Heaps as Array

  • درج Insertion

  • کد درج Insertion Code

  • کد درج Insertion Code

  • حذف حداقل/حداکثر Remove Min/ Max

  • حداقل/حداکثر کد را حذف کنید Remove Min/ Max Code

  • حداقل/حداکثر کد را حذف کنید Remove Min/ Max Code

  • حداکثر محصول Maximum Product

  • صف اولویت STL Priority Queue STL

  • صف اولویت STL Priority Queue STL

  • ماشین های نزدیک Nearby Cars

  • ماشین های نزدیک Nearby Cars

  • کد خودروهای نزدیک Nearby Cars Code

  • کد خودروهای نزدیک Nearby Cars Code

  • اندازه آرایه به نصف کاهش یافت Reduced array size to half

  • ضعیف ترین ردیف ها Weakest Rows

  • ضعیف ترین ردیف ها Weakest Rows

  • رتبه های نسبی Relative Ranks

  • رتبه های نسبی Relative Ranks

انبوه/صف اولویت Heaps / Priority Queue

  • هیپ در مقابل دیگر ساختار داده Heap vs other Data Structure

  • Heaps به عنوان آرایه Heaps as Array

  • درج Insertion

  • حذف حداقل/حداکثر Remove Min/ Max

  • حداکثر محصول Maximum Product

  • اندازه آرایه به نصف کاهش یافت Reduced array size to half

هش کردن Hashing

  • مقدمه ای بر هشینگ Introduction to Hashing

  • توابع هش Hash Functions

  • توابع هش Hash Functions

  • برخورد با برخورد Collision Handling

  • برخورد با برخورد Collision Handling

  • کد درهم سازی - I (راه اندازی) Hashing Code - I (Setup)

  • کد درهم سازی - I (راه اندازی) Hashing Code - I (Setup)

  • کد درهم سازی - II (درج) Hashing Code - II (Insertion)

  • کد درهم سازی - II (درج) Hashing Code - II (Insertion)

  • کد درهم سازی - III (هش کردن مجدد) Hashing Code - III (Rehashing)

  • کد درهم سازی - III (هش کردن مجدد) Hashing Code - III (Rehashing)

  • تست Hashtable ما Testing our Hashtable

  • تست Hashtable ما Testing our Hashtable

  • کد درهم سازی - IV (جستجو) Hashing Code - IV (Search)

  • کد هش - V (پاک کردن) Hashing Code - V (Erase)

  • کد هش - V (پاک کردن) Hashing Code - V (Erase)

  • کد درهم سازی - VI (اپراتور [] بیش از حد بارگذاری) Hashing Code - VI (Operator [] Overloading)

  • [وبینار] نقشه های نامرتب و مجموعه های نامرتب [Webinar] Unordered Maps & Unordered Sets

  • تقاطع آرایه! Array Intersection!

  • K-Sum Subray K-Sum Subarray

هش کردن Hashing

  • مقدمه ای بر هشینگ Introduction to Hashing

  • کد درهم سازی - IV (جستجو) Hashing Code - IV (Search)

  • کد درهم سازی - VI (اپراتور [] بیش از حد بارگذاری) Hashing Code - VI (Operator [] Overloading)

  • [وبینار] نقشه های نامرتب و مجموعه های نامرتب [Webinar] Unordered Maps & Unordered Sets

  • تقاطع آرایه! Array Intersection!

  • K-Sum Subray K-Sum Subarray

ساختار داده امتحان کنید Trie Data Structure

  • ساختار داده امتحان کنید Trie Data Structure

  • ساختار داده امتحان کنید Trie Data Structure

  • کلاس امتحانی Trie Class

  • درج امتحان کنید Trie Insertion

  • جستجو را امتحان کنید Trie Searching

  • جستجو را امتحان کنید Trie Searching

  • کوئری ها را امتحان کنید Trie Queries

  • کوئری ها را امتحان کنید Trie Queries

  • رشته های پیشوند Prefix Strings

  • رشته های پیشوند Prefix Strings

ساختار داده امتحان کنید Trie Data Structure

  • کلاس امتحانی Trie Class

  • درج امتحان کنید Trie Insertion

نمودارها مقدمه Graphs Introduction

  • نمودارها مقدمه Graphs Introduction

  • برنامه های کاربردی نمودار Graph Applications

  • برنامه های کاربردی نمودار Graph Applications

  • نمایندگی لیست مجاورت Adjacency List Representation

  • نمایش لیست مجاورت با کلاس گره Adjacency List Representation with Node Class

  • نمایش لیست مجاورت با کلاس گره Adjacency List Representation with Node Class

  • BFS BFS

  • کد BFS BFS Code

  • کد BFS BFS Code

  • DFS DFS

  • DFS DFS

  • کد DFS DFS Code

  • ترتیب توپولوژیکی Topological Ordering

  • ترتیب توپولوژیکی Topological Ordering

  • الگوریتم کان (BFS اصلاح شده) Kahn's Algorithm (Modified BFS)

  • ترتیب توپولوژیکی با استفاده از کد BFS Topological Ordering using BFS Code

  • الگوریتم دیجکشترا Dijkshtra's Algorithm

  • الگوریتم دیجکشترا Dijkshtra's Algorithm

  • کد الگوریتم دیجکشترا Dijkshtra's Algorithm Code

  • کلید و اتاق KEYS AND ROOMS

  • همه مسیرها از منبع تا هدف All Paths From Source to Target

  • ستاره را در نمودار پیدا کنید Find Star in the graph

  • ستاره را در نمودار پیدا کنید Find Star in the graph

نمودارها مقدمه Graphs Introduction

  • نمودارها مقدمه Graphs Introduction

  • نمایندگی لیست مجاورت Adjacency List Representation

  • BFS BFS

  • کد DFS DFS Code

  • الگوریتم کان (BFS اصلاح شده) Kahn's Algorithm (Modified BFS)

  • ترتیب توپولوژیکی با استفاده از کد BFS Topological Ordering using BFS Code

  • کد الگوریتم دیجکشترا Dijkshtra's Algorithm Code

  • کلید و اتاق KEYS AND ROOMS

  • همه مسیرها از منبع تا هدف All Paths From Source to Target

مقدمه برنامه نویسی پویا Dynamic Programming Introduction

  • مبانی برنامه نویسی پویا Dynamic Programming Basics

  • مبانی برنامه نویسی پویا Dynamic Programming Basics

  • تغییر سکه Coin Change

  • تغییر سکه Coin Change

  • کد تغییر سکه Coin Change Code

  • طولانی ترین دنباله متداول (LCS) Longest Common Subsequence (LCS)

  • طولانی ترین دنباله متداول (LCS) Longest Common Subsequence (LCS)

  • طولانی ترین کد متداول بعدی Longest Common Subsequence Code

  • طولانی ترین کد متداول بعدی Longest Common Subsequence Code

  • مشکل کوله پشتی Knapsack Problem

  • کد مشکل کوله پشتی Knapsack Problem Code

  • مشکل شراب Wines Problem

  • مشکل شراب - II Wines Problem - II

  • شراب - III Wines - III

  • شراب - III Wines - III

  • شراب - IV Wines - IV

  • شراب - IV Wines - IV

  • تغییر سکه Coin Change

  • تغییر سکه Coin Change

  • تعطیلات Vacation

  • تعطیلات Vacation

  • استراتژی بازی بهینه Optimal Game Strategy

  • استراتژی بازی بهینه Optimal Game Strategy

  • حداقل پارتیشن بندی Minimum Partitioning

مقدمه برنامه نویسی پویا Dynamic Programming Introduction

  • تغییر سکه Coin Change

  • کد تغییر سکه Coin Change Code

  • مشکل کوله پشتی Knapsack Problem

  • کد مشکل کوله پشتی Knapsack Problem Code

  • مشکل شراب Wines Problem

  • مشکل شراب - II Wines Problem - II

  • تغییر سکه Coin Change

  • حداقل پارتیشن بندی Minimum Partitioning

پروژه - سبد خرید پشتیبان Project - Shopping Cart Backend

  • معرفی سبد خرید Shopping Cart Introduction

  • نسخه ی نمایشی سبد خرید Shopping Cart Demo

  • کلاس محصول Product Class

  • کلاس محصول Product Class

  • کلاس آیتم Item Class

  • انتخاب محصولات Choosing Products

  • پیاده سازی سبد خرید Cart Implementation

  • پیاده سازی سبد خرید Cart Implementation

  • وارسی Checkout

پروژه - سبد خرید پشتیبان Project - Shopping Cart Backend

  • معرفی سبد خرید Shopping Cart Introduction

  • نسخه ی نمایشی سبد خرید Shopping Cart Demo

  • کلاس آیتم Item Class

  • انتخاب محصولات Choosing Products

  • وارسی Checkout

نمایش نظرات

آموزش ساختارهای داده و الگوریتم‌های ضروری با استفاده از C++ (2023)
جزییات دوره
27.5 hours
245
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
15,869
4.3 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Prateek Narang Prateek Narang

مربی و کارآفرین - Google، Coding Minutes، ScalerPrateek مدرس برنامه‌نویسی محبوب و مهندس نرم‌افزار ace است که در گذشته با Google کار کرده است، در حال حاضر با Scaler کار می‌کند و Coding Minutes را ایجاد کرده است تا دوره‌های با کیفیت بالا را با قیمت‌های مناسب ارائه دهد. او به دلیل توضیحات ساده شگفت انگیزش که همه را عاشق برنامه نویسی می کند شناخته شده است. او بیش از 5 سال تجربه تدریس دارد و بیش از 50000 دانش آموز را در بوت کمپ کلاس درس و دوره آنلاین در یک بوت کمپ محبوب در گذشته آموزش داده است. تخصص او در حل مسئله، الگوریتم ها، برنامه نویسی رقابتی و یادگیری ماشین است. سبک تعاملی ماریو او در رزومه prateeknarang مورد علاقه همه است. بسیاری از شاگردان سابق او اکنون در شرکت‌های تولیدکننده برتر مانند Apple، Google، Amazon، PayTm، Microsoft، Flipkart، Samsung، Adobe، DE Shaw، Codenation، Arcesium و غیره کار می‌کنند.

Coding Minutes Coding Minutes

روشی مناسب برای یادگیری با کارشناسان برنامه درسی بررسی شده در صنعت ما در مورد دوره های آنلاین تخصصی آنلاین سازماندهی شده است که هم وسعت و هم عمق موضوعات مختلف فنی را پوشش می دهد. همه دوره‌های ما بسیار کاربردی هستند و شامل سخنرانی‌های ویدیویی، چالش‌های کدنویسی، فایل‌های پروژه و یک تجربه یادگیری با طراوت می‌شوند. Coding Minutes بخشی از Scaler Academy است. Scaler برنامه درسی با ساختار مناسب و مرتبط با صنعت را ارائه می دهد تا به شما کمک کند حرفه خود را تغییر دهید. ساختارها و الگوریتم‌های داده، طراحی سیستم، علم داده را بیاموزید و از کهنه‌کاران صنعت راهنمایی شغلی دریافت کنید.