آموزش الگوریتم ها و ساختارهای داده در پایتون (مصاحبه پرسش و پاسخ)

Algorithms and Data Structures in Python (INTERVIEW Q&A)

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: راهنمای پیاده سازی ساختارهای داده، الگوریتم های نمودار و الگوریتم های مرتب سازی از ابتدا با سوالات مصاحبه! درک آرایه‌ها و لیست‌های پیوندی درک پشته‌ها و صف‌ها درک ساختارهای داده مانند درخت (درخت‌های جستجوی دودویی) درک درخت‌های تعادل (درخت‌های AVL و درخت‌های قرمز-مشکی) درک ساختارهای داده پشته‌ای درک هش کردن، جداول هش و فرهنگ‌های لغت درک تفاوت‌های بین ساختارهای داده و چکیده انواع داده ها درک پیمایش گراف (BFS و DFS) درک الگوریتم های کوتاه ترین مسیر مانند رویکرد Dijkstra یا روش بلمن-فورد درک حداقل درختان پوشا (الگوریتم Prims) درک الگوریتم های مرتب سازی قادر به توسعه الگوریتم های خود باشید درک خوبی از تفکر الگوریتمی داشته باشید شناسایی و تصحیح کدهای ناکارآمد پیش نیازها:اصول پایتون برخی پیشینه نظری

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

پس در این دوره قرار است چه چیزی یاد بگیرید؟

بخش 1:

  • تنظیم محیط

  • تفاوت‌های بین ساختارهای داده و انواع داده‌های انتزاعی

بخش 2 - آرایه ها:

  • ساختار داده آرایه چیست

  • سوالات مصاحبه مرتبط را آرایه می کند

بخش 3 - لیست های پیوندی:

  • ساختار داده لیست پیوندی و اجرای آن

  • لیست‌های دارای پیوند دوگانه

  • لیست های پیوندی سوالات مصاحبه مرتبط

بخش 4 - پشته ها و صف ها:

  • پشته ها و صف ها

  • پشته حافظه و حافظه پشته

  • چگونه حافظه پشته دقیقاً کار می کند؟

  • سوالات مصاحبه مربوط به پشته و صف


بخش 5 - درختان جستجوی دودویی:

  • درخت جستجوی دودویی چیست

  • کاربردهای عملی درختان جستجوی باینری

  • مشکلات با درختان باینری

بخش 6 - درختان باینری متعادل (درختان AVL و درختان قرمز-سیاه):

  • چرا از درختان جستجوی باینری متعادل استفاده کنیم

  • درختان AVL

  • درختان قرمز-سیاه

بخش 7 - صف های اولویت دار و انبوه:

  • صف های اولویت دار چیست

  • هیپ چیست

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

بخش 8 - هش کردن و دیکشنری ها:

  • آرایه ها و واژه نامه های انجمنی

  • نحوه دستیابی به زمان اجرای ثابت O(1) با هش

بخش 9 - پیمایش نمودار:

  • الگوریتم های اصلی نمودار

  • عرض اول

  • جستجوی اول در عمق

  • تجسم حافظه پشته برای DFS

بخش 10 - مسائل کوتاه‌ترین مسیر (الگوریتم‌های Dijkstra و Bellman-Ford):

  • الگوریتم های کوتاه ترین مسیر

  • الگوریتم Dijkstra

  • الگوریتم بلمن-فورد

  • چگونه فرصت های آربیتراژ در FOREX را شناسایی کنیم؟

بخش 11 - درختان پوشاننده (رویکردهای کروسکال و پریم):

  • درختان پوشاننده چه هستند

  • ساختار داده union-find چیست و چگونه از آن استفاده کنیم

  • تئوری و اجرای الگوریتم کروسکال نیز

  • الگوریتم پریم

بخش 12 - الگوریتم های جستجوی زیر رشته ای

  • الگوریتم های جستجوی زیر رشته ای چیست و چرا در نرم افزارهای دنیای واقعی مهم هستند

  • الگوریتم جستجوی زیر رشته ای brute-force

  • هش کردن و روش Rabin-Karp

  • الگوریتم جستجوی زیر رشته ای Knuth-Morris-Pratt

  • الگوریتم جستجوی زیر رشته Z (الگوریتم Z)

  • پیاده سازی در پایتون

بخش 13 - چرخه های همیلتونی (مشکل فروشنده دوره گرد)

  • چرخه‌های همیلتونی در نمودارها

  • مشکل فروشنده دوره گرد چیست؟

  • نحوه استفاده از Backtracking برای حل مشکل

  • رویکردهای فراابتکاری برای تقویت الگوریتم ها

بخش 14 - الگوریتم های مرتب سازی

  • الگوریتم های مرتب سازی

  • مرتب‌سازی حبابی، مرتب‌سازی انتخابی و مرتب‌سازی درج

  • مرتب‌سازی سریع و مرتب‌سازی ادغام شده

  • الگوریتم‌های مرتب‌سازی غیرمقایسه‌ای

  • شمارش مرتب‌سازی و مرتب‌سازی ریشه

بخش 15 - تجزیه و تحلیل الگوریتم ها

  • نحوه اندازه گیری زمان اجرای الگوریتم ها

  • تحلیل زمان اجرا با نمادهای O بزرگ (ordo)، Ω بزرگ (امگا) و θ بزرگ (تتا)

  • کلاس های پیچیدگی

  • الگوریتم های چند جمله ای (P) و چند جمله ای غیر قطعی (NP)

  • O(1)، O(logN)، O(N) و چندین پیچیدگی زمان اجرا دیگر

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

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

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

از اینکه به دوره پیوستید متشکریم، بیایید شروع کنیم!


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

معرفی Introduction

  • معرفی Introduction

  • مبانی نظریه پیچیدگی Complexity theory basics

معرفی Introduction

  • معرفی Introduction

  • مبانی نظریه پیچیدگی Complexity theory basics

نصب و راه اندازی محیط Installation and Environment Setup

  • نصب پایتون Installing Python

  • در حال نصب PyCharm Installing PyCharm

نصب و راه اندازی محیط Installation and Environment Setup

  • نصب پایتون Installing Python

  • در حال نصب PyCharm Installing PyCharm

### ساختارهای داده ### ### DATA STRUCTURES ###

  • چرا به ساختارهای داده نیاز داریم؟ Why do we need data structures?

  • ساختار داده ها و انواع داده های انتزاعی Data structures and abstract data types

  • آزمون ساختارهای داده و انواع داده های انتزاعی Data Structures and Abstract Data Types Quiz

### ساختارهای داده ### ### DATA STRUCTURES ###

  • چرا به ساختارهای داده نیاز داریم؟ Why do we need data structures?

  • ساختار داده ها و انواع داده های انتزاعی Data structures and abstract data types

  • آزمون ساختارهای داده و انواع داده های انتزاعی Data Structures and Abstract Data Types Quiz

ساختارهای داده - آرایه ها Data Structures - Arrays

  • ساختارهای داده آرایه چیست؟ What are array data structures?

  • لیست ها در پایتون چیست؟ What are lists in Python?

  • معرفی آرایه ها - عملیات Arrays introduction - operations

  • لیست ها در پایتون Lists in Python

  • لیست در پایتون - عملیات پیشرفته Lists in Python - advanced operations

  • لیست ها در پایتون - درک لیست Lists in Python - list comprehension

  • آزمون آرایه ها و لیست ها Arrays and Lists Quiz

ساختارهای داده - آرایه ها Data Structures - Arrays

  • ساختارهای داده آرایه چیست؟ What are array data structures?

  • لیست ها در پایتون چیست؟ What are lists in Python?

  • معرفی آرایه ها - عملیات Arrays introduction - operations

  • لیست ها در پایتون Lists in Python

  • لیست در پایتون - عملیات پیشرفته Lists in Python - advanced operations

  • لیست ها در پایتون - درک لیست Lists in Python - list comprehension

  • آزمون آرایه ها و لیست ها Arrays and Lists Quiz

سوالات مصاحبه - (آرایه ها) Interview Questions - (Arrays)

  • معکوس کردن یک نمای کلی آرایه در محل Reversing an array in-place overview

  • معکوس کردن یک راه حل آرایه در محل Reversing an array in-place solution

  • بررسی اجمالی مشکل پالیندروم Palindrome problem overview

  • راه حل مشکل پالیندروم Palindrome problem solution

  • بررسی اجمالی مشکل برگشت عدد صحیح Integer reversion problem overview

  • راه حل مشکل بازگشت اعداد صحیح Integer reversion problem solution

  • نمای کلی مشکل آناگرام Anagram problem overview

  • حل مشکل آناگرام Anagram problem solution

  • بررسی اجمالی مشکل پرچم ملی هلند Dutch national flag problem overview

  • نظریه مشکل پرچم ملی هلند Dutch national flag problem theory

  • راه حل مشکل پرچم ملی هلند Dutch national flag problem solution

  • بررسی اجمالی مشکل آب باران به دام انداختن Trapping rain water problem overview

  • تئوری مشکل آب باران به دام انداختن Trapping rain water problem theory

  • حل مشکل آب باران به دام انداختن Trapping rain water problem solution

سوالات مصاحبه - (آرایه ها) Interview Questions - (Arrays)

  • معکوس کردن یک نمای کلی آرایه در محل Reversing an array in-place overview

  • معکوس کردن یک راه حل آرایه در محل Reversing an array in-place solution

  • بررسی اجمالی مشکل پالیندروم Palindrome problem overview

  • راه حل مشکل پالیندروم Palindrome problem solution

  • بررسی اجمالی مشکل برگشت عدد صحیح Integer reversion problem overview

  • راه حل مشکل بازگشت اعداد صحیح Integer reversion problem solution

  • نمای کلی مشکل آناگرام Anagram problem overview

  • حل مشکل آناگرام Anagram problem solution

  • بررسی اجمالی مشکل پرچم ملی هلند Dutch national flag problem overview

  • نظریه مشکل پرچم ملی هلند Dutch national flag problem theory

  • راه حل مشکل پرچم ملی هلند Dutch national flag problem solution

  • بررسی اجمالی مشکل آب باران به دام انداختن Trapping rain water problem overview

  • تئوری مشکل آب باران به دام انداختن Trapping rain water problem theory

  • حل مشکل آب باران به دام انداختن Trapping rain water problem solution

ساختارهای داده - لیست های پیوندی Data Structures - Linked Lists

  • لیست های پیوندی چیست؟ What are linked lists?

  • معرفی لیست پیوندی - عملیات Linked list introduction - operations

  • پیاده سازی لیست پیوندی I Linked list implementation I

  • پیاده سازی لیست پیوندی II Linked list implementation II

  • پیاده سازی لیست پیوندی III Linked list implementation III

  • بازبینی عملیات حذف Revisiting remove operation

  • مقایسه لیست ها و آرایه های مرتبط Comparing linked lists and arrays

  • کاربردهای عملی (در دنیای واقعی) لیست های پیوندی Practical (real-world) applications of linked lists

  • مسابقه لیست های پیوندی Linked Lists Quiz

ساختارهای داده - لیست های پیوندی Data Structures - Linked Lists

  • لیست های پیوندی چیست؟ What are linked lists?

  • معرفی لیست پیوندی - عملیات Linked list introduction - operations

  • پیاده سازی لیست پیوندی I Linked list implementation I

  • پیاده سازی لیست پیوندی II Linked list implementation II

  • پیاده سازی لیست پیوندی III Linked list implementation III

  • بازبینی عملیات حذف Revisiting remove operation

  • مقایسه لیست ها و آرایه های مرتبط Comparing linked lists and arrays

  • کاربردهای عملی (در دنیای واقعی) لیست های پیوندی Practical (real-world) applications of linked lists

  • مسابقه لیست های پیوندی Linked Lists Quiz

ساختارهای داده - لیست های دارای پیوند دوگانه Data Structures - Doubly Linked Lists

  • لیست های دارای پیوند دوگانه چیست؟ What are doubly linked lists?

  • پیاده سازی لیست پیوندی دوگانه Doubly linked list implementation

  • مقایسه زمان اجرا: لیست ها و آرایه های مرتبط Running time comparison: linked lists and arrays

  • مسابقه لیست های دارای پیوند دوگانه Doubly Linked Lists Quiz

ساختارهای داده - لیست های دارای پیوند دوگانه Data Structures - Doubly Linked Lists

  • لیست های دارای پیوند دوگانه چیست؟ What are doubly linked lists?

  • پیاده سازی لیست پیوندی دوگانه Doubly linked list implementation

  • مقایسه زمان اجرا: لیست ها و آرایه های مرتبط Running time comparison: linked lists and arrays

  • مسابقه لیست های دارای پیوند دوگانه Doubly Linked Lists Quiz

سوالات مصاحبه (لیست های مرتبط) Interview Questions (Linked Lists)

  • یافتن گره میانی در نمای کلی فهرست پیوندی Finding the middle node in a linked list overview

  • یافتن گره میانی در راه حل لیست پیوندی Finding the middle node in a linked list solution

  • معکوس کردن یک فهرست پیوندی نمای کلی در محل Reverse a linked list in-place overview

  • یک راه حل در محل لیست پیوندی را معکوس کنید Reverse a linked list in-place solution

سوالات مصاحبه (لیست های مرتبط) Interview Questions (Linked Lists)

  • یافتن گره میانی در نمای کلی فهرست پیوندی Finding the middle node in a linked list overview

  • یافتن گره میانی در راه حل لیست پیوندی Finding the middle node in a linked list solution

  • معکوس کردن یک فهرست پیوندی نمای کلی در محل Reverse a linked list in-place overview

  • یک راه حل در محل لیست پیوندی را معکوس کنید Reverse a linked list in-place solution

ساختارهای داده - پشته ها Data Structures - Stacks

  • پشته ها چیست؟ What are stacks?

  • پشته ها در مدیریت حافظه (پشته ها و پشته ها) Stacks in memory management (stacks and heaps)

  • تجسم حافظه پشته Stack memory visualization

  • اجرای پشته Stack implementation

  • کاربردهای عملی (در دنیای واقعی) پشته ها Practical (real-world) applications of stacks

  • مسابقه پشته Stack Quiz

ساختارهای داده - پشته ها Data Structures - Stacks

  • پشته ها چیست؟ What are stacks?

  • پشته ها در مدیریت حافظه (پشته ها و پشته ها) Stacks in memory management (stacks and heaps)

  • تجسم حافظه پشته Stack memory visualization

  • اجرای پشته Stack implementation

  • کاربردهای عملی (در دنیای واقعی) پشته ها Practical (real-world) applications of stacks

  • مسابقه پشته Stack Quiz

ساختارهای داده - صف Data Structures - Queues

  • صف ها چیست؟ What are queues?

  • اجرای صف Queue implementation

  • مسابقه صف Queues Quiz

ساختارهای داده - صف Data Structures - Queues

  • صف ها چیست؟ What are queues?

  • اجرای صف Queue implementation

  • مسابقه صف Queues Quiz

سوالات مصاحبه (پشته و صف) Interview Questions (Stacks and Queues)

  • حداکثر در نمای کلی مشکل پشته Max in a stack problem overview

  • حداکثر در یک راه حل مشکل پشته Max in a stack problem solution

  • صف با مشکل پشته Queue with stack problem

  • صف با راه حل مشکل پشته Queue with stack problem solution

  • صف با راه حل مشکل پشته - بازگشت Queue with stack problem solution - recursion

سوالات مصاحبه (پشته و صف) Interview Questions (Stacks and Queues)

  • حداکثر در نمای کلی مشکل پشته Max in a stack problem overview

  • حداکثر در یک راه حل مشکل پشته Max in a stack problem solution

  • صف با مشکل پشته Queue with stack problem

  • صف با راه حل مشکل پشته Queue with stack problem solution

  • صف با راه حل مشکل پشته - بازگشت Queue with stack problem solution - recursion

ساختارهای داده - درختان جستجوی دودویی Data Structures - Binary Search Trees

  • درختان جستجوی دودویی چیست؟ What are binary search trees?

  • نظریه درختان جستجوی دودویی - جستجو، درج Binary search trees theory - search, insert

  • نظریه درختان جستجوی دودویی - حذف Binary search trees theory - delete

  • نظریه درختان جستجوی دودویی - پیمایش به ترتیب Binary search trees theory - in-order traversal

  • نظریه درختان جستجوی دودویی - زمان اجرا Binary search trees theory - running times

  • پیاده سازی درخت جستجوی باینری I Binary search tree implementation I

  • اجرای درخت جستجوی باینری II Binary search tree implementation II

  • تجسم حافظه پشته - یافتن حداکثر (دقیقه) موارد Stack memory visualization - finding max (min) items

  • تجسم حافظه پشته - پیمایش درخت Stack memory visualization - tree traversal

  • اجرای درخت جستجوی دودویی III - عملیات حذف Binary search tree implementation III - remove operation

  • کاربردهای عملی (در دنیای واقعی) درختان Practical (real-world) applications of trees

  • مسابقه درختان جستجوی دودویی Binary Search Trees Quiz

ساختارهای داده - درختان جستجوی دودویی Data Structures - Binary Search Trees

  • درختان جستجوی دودویی چیست؟ What are binary search trees?

  • نظریه درختان جستجوی دودویی - جستجو، درج Binary search trees theory - search, insert

  • نظریه درختان جستجوی دودویی - حذف Binary search trees theory - delete

  • نظریه درختان جستجوی دودویی - پیمایش به ترتیب Binary search trees theory - in-order traversal

  • نظریه درختان جستجوی دودویی - زمان اجرا Binary search trees theory - running times

  • پیاده سازی درخت جستجوی باینری I Binary search tree implementation I

  • اجرای درخت جستجوی باینری II Binary search tree implementation II

  • تجسم حافظه پشته - یافتن حداکثر (دقیقه) موارد Stack memory visualization - finding max (min) items

  • تجسم حافظه پشته - پیمایش درخت Stack memory visualization - tree traversal

  • اجرای درخت جستجوی دودویی III - عملیات حذف Binary search tree implementation III - remove operation

  • کاربردهای عملی (در دنیای واقعی) درختان Practical (real-world) applications of trees

  • مسابقه درختان جستجوی دودویی Binary Search Trees Quiz

سوالات مصاحبه (درخت جستجوی دودویی) Interview Questions (Binary Search Trees)

  • مقایسه نمای کلی درختان باینری Compare binary trees overview

  • مقایسه راه حل درختان باینری Compare binary trees solution

سوالات مصاحبه (درخت جستجوی دودویی) Interview Questions (Binary Search Trees)

  • مقایسه نمای کلی درختان باینری Compare binary trees overview

  • مقایسه راه حل درختان باینری Compare binary trees solution

ساختارهای داده - درختان AVL Data Structures - AVL Trees

  • انگیزه پشت درختان جستجوی باینری متعادل Motivation behind balanced binary search trees

  • درختان AVL چیست؟ What are AVL trees?

  • معرفی درختان AVL - ارتفاع AVL trees introduction - height

  • معرفی درختان AVL - چرخش AVL trees introduction - rotations

  • معرفی درختان AVL - تصویر AVL trees introduction - illustration

  • پیاده سازی درخت AVL I AVL tree implementation I

  • اجرای درخت AVL II AVL tree implementation II

  • اجرای درخت AVL III AVL tree implementation III

  • اجرای درخت AVL IV AVL tree implementation IV

  • اجرای درخت AVL V AVL tree implementation V

  • کاربردهای عملی (در دنیای واقعی) درختان جستجوی باینری متعادل Practical (real-world) applications of balanced binary search trees

  • مسابقه درختان AVL AVL Trees Quiz

ساختارهای داده - درختان AVL Data Structures - AVL Trees

  • انگیزه پشت درختان جستجوی باینری متعادل Motivation behind balanced binary search trees

  • درختان AVL چیست؟ What are AVL trees?

  • معرفی درختان AVL - ارتفاع AVL trees introduction - height

  • معرفی درختان AVL - چرخش AVL trees introduction - rotations

  • معرفی درختان AVL - تصویر AVL trees introduction - illustration

  • پیاده سازی درخت AVL I AVL tree implementation I

  • اجرای درخت AVL II AVL tree implementation II

  • اجرای درخت AVL III AVL tree implementation III

  • اجرای درخت AVL IV AVL tree implementation IV

  • اجرای درخت AVL V AVL tree implementation V

  • کاربردهای عملی (در دنیای واقعی) درختان جستجوی باینری متعادل Practical (real-world) applications of balanced binary search trees

  • مسابقه درختان AVL AVL Trees Quiz

ساختارهای داده - درختان قرمز-سیاه Data Structures - Red-Black Trees

  • درختان قرمز و سیاه چیست؟ What are red-black trees?

  • منطق پشت درختان قرمز و سیاه The logic behind red-black trees

  • درختان قرمز-سیاه - موارد رنگ آمیزی و چرخش Red-black trees - recoloring and rotation cases

  • تصاویر درخت قرمز-سیاه Red-black tree illustrations

  • اجرای درخت قرمز سیاه I Red-black tree implementation I

  • اجرای درخت قرمز-سیاه II Red-black tree implementation II

  • اجرای درخت قرمز-سیاه III Red-black tree implementation III

  • اجرای درخت قرمز سیاه IV Red-black tree implementation IV

  • تفاوت بین درخت قرمز-سیاه و درخت AVL Differences between red-black tree and AVL trees

  • مسابقه درختان قرمز-سیاه Red-Black Trees Quiz

ساختارهای داده - درختان قرمز-سیاه Data Structures - Red-Black Trees

  • درختان قرمز و سیاه چیست؟ What are red-black trees?

  • منطق پشت درختان قرمز و سیاه The logic behind red-black trees

  • درختان قرمز-سیاه - موارد رنگ آمیزی و چرخش Red-black trees - recoloring and rotation cases

  • تصاویر درخت قرمز-سیاه Red-black tree illustrations

  • اجرای درخت قرمز سیاه I Red-black tree implementation I

  • اجرای درخت قرمز-سیاه II Red-black tree implementation II

  • اجرای درخت قرمز-سیاه III Red-black tree implementation III

  • اجرای درخت قرمز سیاه IV Red-black tree implementation IV

  • تفاوت بین درخت قرمز-سیاه و درخت AVL Differences between red-black tree and AVL trees

  • مسابقه درختان قرمز-سیاه Red-Black Trees Quiz

ساختارهای داده - Heaps Data Structures - Heaps

  • صف های اولویت دار چیست؟ What are priority queues?

  • مقدمه هیپ - مبانی Heap introduction - basics

  • معرفی هیپ - نمایش آرایه Heap introduction - array representation

  • معرفی Heap - عملیات حذف Heap introduction - remove operation

  • استفاده از ساختار داده های پشته برای مرتب سازی (Heapsort) Using heap data structure to sort (heapsort)

  • معرفی Heap - پیچیدگی های عملیات Heap introduction - operations complexities

  • پشته های دوجمله ای و فیبوناچی Binomial and Fibonacci heaps

  • اجرای هیپ I Heap implementation I

  • اجرای Heap II Heap implementation II

  • اجرای هیپ III Heap implementation III

  • Heaps در پایتون Heaps in Python

  • Heaps Quiz Heaps Quiz

ساختارهای داده - Heaps Data Structures - Heaps

  • صف های اولویت دار چیست؟ What are priority queues?

  • مقدمه هیپ - مبانی Heap introduction - basics

  • معرفی هیپ - نمایش آرایه Heap introduction - array representation

  • معرفی Heap - عملیات حذف Heap introduction - remove operation

  • استفاده از ساختار داده های پشته برای مرتب سازی (Heapsort) Using heap data structure to sort (heapsort)

  • معرفی Heap - پیچیدگی های عملیات Heap introduction - operations complexities

  • پشته های دوجمله ای و فیبوناچی Binomial and Fibonacci heaps

  • اجرای هیپ I Heap implementation I

  • اجرای Heap II Heap implementation II

  • اجرای هیپ III Heap implementation III

  • Heaps در پایتون Heaps in Python

  • Heaps Quiz Heaps Quiz

سوالات مصاحبه (هیپ) Interview Questions (Heaps)

  • سوال مصاحبه شماره 1 - بررسی خواص پشته Interview question #1 - checking heap properties

  • سوال مصاحبه شماره 1 - راه حل Interview question #1 - solution

  • سوال مصاحبه شماره 2 - حداکثر هپ تا یک پشته کوچک Interview question #2 - max heap to a min heap

  • سوال مصاحبه شماره 2 - راه حل Interview question #2 - solution

سوالات مصاحبه (هیپ) Interview Questions (Heaps)

  • سوال مصاحبه شماره 1 - بررسی خواص پشته Interview question #1 - checking heap properties

  • سوال مصاحبه شماره 1 - راه حل Interview question #1 - solution

  • سوال مصاحبه شماره 2 - حداکثر هپ تا یک پشته کوچک Interview question #2 - max heap to a min heap

  • سوال مصاحبه شماره 2 - راه حل Interview question #2 - solution

ساختارهای داده - آرایه های انجمنی (واژه نامه ها) Data Structures - Associative Arrays (Dictionaries)

  • آرایه های انجمنی چیست؟ What are associative arrays?

  • مقدمه Hashtable - مبانی Hashtable introduction - basics

  • مقدمه Hashtable - برخورد Hashtable introduction - collisions

  • مقدمه Hashtable - تغییر اندازه پویا Hashtable introduction - dynamic resizing

  • اجرای کاوش خطی I Linear probing implementation I

  • اجرای کاوش خطی II Linear probing implementation II

  • اجرای کاوش خطی III Linear probing implementation III

  • دیکشنری ها در پایتون Dictionaires in Python

  • چرا باید از اعداد اول در هش استفاده کرد؟ Why to use prime numbers in hashing?

  • کاربردهای عملی (در دنیای واقعی) هش کردن Practical (real-world) applications of hashing

  • مسابقه فرهنگ لغت Dictionaries Quiz

ساختارهای داده - آرایه های انجمنی (واژه نامه ها) Data Structures - Associative Arrays (Dictionaries)

  • آرایه های انجمنی چیست؟ What are associative arrays?

  • مقدمه Hashtable - مبانی Hashtable introduction - basics

  • مقدمه Hashtable - برخورد Hashtable introduction - collisions

  • مقدمه Hashtable - تغییر اندازه پویا Hashtable introduction - dynamic resizing

  • اجرای کاوش خطی I Linear probing implementation I

  • اجرای کاوش خطی II Linear probing implementation II

  • اجرای کاوش خطی III Linear probing implementation III

  • دیکشنری ها در پایتون Dictionaires in Python

  • چرا باید از اعداد اول در هش استفاده کرد؟ Why to use prime numbers in hashing?

  • کاربردهای عملی (در دنیای واقعی) هش کردن Practical (real-world) applications of hashing

  • مسابقه فرهنگ لغت Dictionaries Quiz

### الگوریتم های نمودار ### ### GRAPH ALGORITHMS ###

  • مروری بر نظریه گراف Graph theory overview

  • ماتریس مجاورت و فهرست مجاورت Adjacency matrix and adjacency list

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

  • آزمون بررسی اجمالی الگوریتم های نمودار Graph Algorithms Overview Quiz

### الگوریتم های نمودار ### ### GRAPH ALGORITHMS ###

  • مروری بر نظریه گراف Graph theory overview

  • ماتریس مجاورت و فهرست مجاورت Adjacency matrix and adjacency list

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

  • آزمون بررسی اجمالی الگوریتم های نمودار Graph Algorithms Overview Quiz

الگوریتم های نمودار - الگوریتم های پیمایش نمودار Graph Algorithms - Graph Traversal Algorithms

  • مقدمه جستجوی پهنا Breadth-first search introduction

  • اجرای جستجوی پهنا Breadth-first search implementation

  • WebCrawlers (هسته موتورهای جستجو) چیست؟ What are WebCrawlers (core of search engines)?

  • پیاده سازی اولیه WebCrawler WebCrawler basic implementation

  • مقدمه جستجوی عمق Depth-first search introduction

  • اجرای جستجوی عمقی Depth-first search implementation

  • اجرای جستجوی اول در عمق II Depth-first search implementation II

  • مدیریت حافظه: BFS در مقابل DFS Memory management: BFS vs DFS

  • مسابقه پیمایش نمودار Graph traversal quiz

الگوریتم های نمودار - الگوریتم های پیمایش نمودار Graph Algorithms - Graph Traversal Algorithms

  • مقدمه جستجوی پهنا Breadth-first search introduction

  • اجرای جستجوی پهنا Breadth-first search implementation

  • WebCrawlers (هسته موتورهای جستجو) چیست؟ What are WebCrawlers (core of search engines)?

  • پیاده سازی اولیه WebCrawler WebCrawler basic implementation

  • مقدمه جستجوی عمق Depth-first search introduction

  • اجرای جستجوی عمقی Depth-first search implementation

  • اجرای جستجوی اول در عمق II Depth-first search implementation II

  • مدیریت حافظه: BFS در مقابل DFS Memory management: BFS vs DFS

  • مسابقه پیمایش نمودار Graph traversal quiz

سوالات مصاحبه (پیمایش نمودار) Interview Questions (Graph Traversal)

  • سوال مصاحبه شماره 1 - اجرای DFS با بازگشت Interview question #1 - implement DFS with recursion

  • سوال مصاحبه شماره 1 - راه حل Interview question #1 - solution

  • جستجوی عمقی و تجسم حافظه پشته Depth-first search and stack memory visualisation

  • سوال مصاحبه شماره 2 - استفاده از BFS برای یافتن راهی برای خروج از پیچ و خم Interview question #2 - using BFS to find way out of maze

  • سوال مصاحبه شماره 2 - راه حل Interview question #2 - solution

سوالات مصاحبه (پیمایش نمودار) Interview Questions (Graph Traversal)

  • سوال مصاحبه شماره 1 - اجرای DFS با بازگشت Interview question #1 - implement DFS with recursion

  • سوال مصاحبه شماره 1 - راه حل Interview question #1 - solution

  • جستجوی عمقی و تجسم حافظه پشته Depth-first search and stack memory visualisation

  • سوال مصاحبه شماره 2 - استفاده از BFS برای یافتن راهی برای خروج از پیچ و خم Interview question #2 - using BFS to find way out of maze

  • سوال مصاحبه شماره 2 - راه حل Interview question #2 - solution

الگوریتم های نمودار - کوتاه ترین مسیرها با الگوریتم دایکسترا Graph Algorithms - Shortest Paths with Dijkstra's Algorithm

  • مشکل کوتاه ترین مسیر چیست؟ What is the shortest path problem?

  • تجسم الگوریتم Dijkstra Dijkstra algorithm visualization

  • اجرای الگوریتم Dijkstra I - Edge، Node Dijkstra algorithm implementation I - Edge, Node

  • اجرای الگوریتم Dijkstra II - الگوریتم Dijkstra algorithm implementation II - algorithm

  • اجرای الگوریتم Dijkstra III - آزمایش Dijkstra algorithm implementation III - testing

  • الگوریتم Dijktsra با نمایش ماتریس مجاورت Dijktsra's algorithm with adjacency matrix representation

  • اجرای نمایش ماتریس مجاورت Adjacency matrix representation implementation

  • برنامه های کاربردی الگوریتم های کوتاه ترین مسیر Shortest path algorithms applications

  • روش مسیر بحرانی (CPM) چیست؟ What is the critical path method (CPM)?

  • آزمون الگوریتم دایکسترا Dijkstra's Algorithm Quiz

الگوریتم های نمودار - کوتاه ترین مسیرها با الگوریتم دایکسترا Graph Algorithms - Shortest Paths with Dijkstra's Algorithm

  • مشکل کوتاه ترین مسیر چیست؟ What is the shortest path problem?

  • تجسم الگوریتم Dijkstra Dijkstra algorithm visualization

  • اجرای الگوریتم Dijkstra I - Edge، Node Dijkstra algorithm implementation I - Edge, Node

  • اجرای الگوریتم Dijkstra II - الگوریتم Dijkstra algorithm implementation II - algorithm

  • اجرای الگوریتم Dijkstra III - آزمایش Dijkstra algorithm implementation III - testing

  • الگوریتم Dijktsra با نمایش ماتریس مجاورت Dijktsra's algorithm with adjacency matrix representation

  • اجرای نمایش ماتریس مجاورت Adjacency matrix representation implementation

  • برنامه های کاربردی الگوریتم های کوتاه ترین مسیر Shortest path algorithms applications

  • روش مسیر بحرانی (CPM) چیست؟ What is the critical path method (CPM)?

  • آزمون الگوریتم دایکسترا Dijkstra's Algorithm Quiz

الگوریتم های نمودار - کوتاه ترین مسیرها با الگوریتم بلمن-فورد Graph Algorithms - Shortest Paths with Bellman-Ford Algorithm

  • الگوریتم بلمن فورد چیست؟ What is the Bellman-Ford algorithm?

  • تجسم الگوریتم بلمن-فورد Bellman-Ford algorithm visualization

  • اجرای الگوریتم بلمن-فورد I - Node، Edge Bellman-Ford algorithm implementation I - Node, Edge

  • اجرای الگوریتم بلمن-فورد II - الگوریتم Bellman-Ford algorithm implementation II - the algorithm

  • اجرای الگوریتم بلمن-فورد III - آزمایش Bellman-Ford algorithm implementation III - testing

  • الگوریتم حریصانه یا رویکرد برنامه نویسی پویا؟ Greedy algorithm or dynamic programming approach?

  • آزمون الگوریتم بلمن-فورد Bellman-Ford Algorithm Quiz

الگوریتم های نمودار - کوتاه ترین مسیرها با الگوریتم بلمن-فورد Graph Algorithms - Shortest Paths with Bellman-Ford Algorithm

  • الگوریتم بلمن فورد چیست؟ What is the Bellman-Ford algorithm?

  • تجسم الگوریتم بلمن-فورد Bellman-Ford algorithm visualization

  • اجرای الگوریتم بلمن-فورد I - Node، Edge Bellman-Ford algorithm implementation I - Node, Edge

  • اجرای الگوریتم بلمن-فورد II - الگوریتم Bellman-Ford algorithm implementation II - the algorithm

  • اجرای الگوریتم بلمن-فورد III - آزمایش Bellman-Ford algorithm implementation III - testing

  • الگوریتم حریصانه یا رویکرد برنامه نویسی پویا؟ Greedy algorithm or dynamic programming approach?

  • آزمون الگوریتم بلمن-فورد Bellman-Ford Algorithm Quiz

سوالات مصاحبه (کوتاه ترین مسیرها) Interview Questions (Shortest Paths)

  • سوال مصاحبه شماره 1 - تشخیص چرخه های منفی در فارکس Interview question #1 - detecting negative cycles on the FOREX

  • چگونه از الگوریتم بلمن-فورد در فارکس استفاده کنیم؟ How to use Bellman-Ford algorithm on the FOREX?

  • سوال مصاحبه شماره 1 - راه حل Interview question #1 - solution

سوالات مصاحبه (کوتاه ترین مسیرها) Interview Questions (Shortest Paths)

  • سوال مصاحبه شماره 1 - تشخیص چرخه های منفی در فارکس Interview question #1 - detecting negative cycles on the FOREX

  • چگونه از الگوریتم بلمن-فورد در فارکس استفاده کنیم؟ How to use Bellman-Ford algorithm on the FOREX?

  • سوال مصاحبه شماره 1 - راه حل Interview question #1 - solution

الگوریتم های نمودار - درختان پوشا با الگوریتم کروسکال Graph Algorithms - Spanning Trees with Kruskal Algorithm

  • ساختار داده مجموعه ناهمگون چیست؟ What is the disjoint set data structure?

  • تجسم مجموعه های از هم گسسته Disjoint sets visualization

  • مقدمه الگوریتم کروسکال Kruskal's algorithm introduction

  • پیاده سازی الگوریتم Kruskal I - کلاس های پایه Kruskal algorithm implementation I - basic classes

  • پیاده سازی الگوریتم کروسکال II - مجموعه جدا Kruskal algorithm implementation II - disjoint set

  • اجرای الگوریتم کروسکال III - الگوریتم Kruskal algorithm implementation III - algorithm

  • اجرای الگوریتم کروسکال VI - تست Kruskal algorithm implementation VI - testing

  • آزمون الگوریتم کروسکال Kruskal's Algorithm Quiz

الگوریتم های نمودار - درختان پوشا با الگوریتم کروسکال Graph Algorithms - Spanning Trees with Kruskal Algorithm

  • ساختار داده مجموعه ناهمگون چیست؟ What is the disjoint set data structure?

  • تجسم مجموعه های از هم گسسته Disjoint sets visualization

  • مقدمه الگوریتم کروسکال Kruskal's algorithm introduction

  • پیاده سازی الگوریتم Kruskal I - کلاس های پایه Kruskal algorithm implementation I - basic classes

  • پیاده سازی الگوریتم کروسکال II - مجموعه جدا Kruskal algorithm implementation II - disjoint set

  • اجرای الگوریتم کروسکال III - الگوریتم Kruskal algorithm implementation III - algorithm

  • اجرای الگوریتم کروسکال VI - تست Kruskal algorithm implementation VI - testing

  • آزمون الگوریتم کروسکال Kruskal's Algorithm Quiz

الگوریتم های نمودار - درختان پوشا با الگوریتم Prims Graph Algorithms - Spanning Trees with Prims Algorithm

  • الگوریتم Prim-Jarnik چیست؟ What is the Prim-Jarnik algorithm?

  • پیاده سازی الگوریتم Prims-Jarnik I Prims-Jarnik algorithm implementation I

  • اجرای الگوریتم Prims-Jarnik II Prims-Jarnik algorithm implementation II

  • مقایسه رویکردهای درخت پوشا Comparing the spanning tree approaches

  • کاربردهای درختان پوشاننده Applications of spanning trees

  • آزمون الگوریتم پریم Prim's Algorithm Quiz

الگوریتم های نمودار - درختان پوشا با الگوریتم Prims Graph Algorithms - Spanning Trees with Prims Algorithm

  • الگوریتم Prim-Jarnik چیست؟ What is the Prim-Jarnik algorithm?

  • پیاده سازی الگوریتم Prims-Jarnik I Prims-Jarnik algorithm implementation I

  • اجرای الگوریتم Prims-Jarnik II Prims-Jarnik algorithm implementation II

  • مقایسه رویکردهای درخت پوشا Comparing the spanning tree approaches

  • کاربردهای درختان پوشاننده Applications of spanning trees

  • آزمون الگوریتم پریم Prim's Algorithm Quiz

چرخه های همیلتونی - مشکل فروشنده دوره گرد Hamiltonian Cycles - Travelling Salesman Problem

  • چرخه هامیلتونی چیست؟ What are Hamiltonian cycles?

  • مشکل فروشنده دوره گرد The travelling salesman problem

  • پیاده سازی مشکل فروشنده دوره گرد Travelling salesman problem implementation

  • TSP و تجسم حافظه پشته TSP and stack memory visualization

  • چرا از فراابتکاری استفاده کنیم؟ Why to use meta-heuristics?

  • امتحان مسائل همیلتونی Hamiltonian Problem Quiz

چرخه های همیلتونی - مشکل فروشنده دوره گرد Hamiltonian Cycles - Travelling Salesman Problem

  • چرخه هامیلتونی چیست؟ What are Hamiltonian cycles?

  • مشکل فروشنده دوره گرد The travelling salesman problem

  • پیاده سازی مشکل فروشنده دوره گرد Travelling salesman problem implementation

  • TSP و تجسم حافظه پشته TSP and stack memory visualization

  • چرا از فراابتکاری استفاده کنیم؟ Why to use meta-heuristics?

  • امتحان مسائل همیلتونی Hamiltonian Problem Quiz

### الگوریتم های جستجوی زیر رشته ای ### ### SUBSTRING SEARCH ALGORITHMS ###

  • مقدمه جستجوی Brute-Force Brute-force search introduction

  • اجرای الگوریتم جستجوی زیر رشته ای Brute-Force Brute-force substring search algorithm implementation

  • آزمون جستجوی ساده زیر رشته ای Naive Substring Search Quiz

  • معرفی الگوریتم رابین-کارپ Rabin-Karp algorithm introduction

  • پیاده سازی الگوریتم رابین-کارپ Rabin-Karp algorithm implementation

  • مسابقه جستجوی زیر رشته Rabin-Karp Rabin-Karp Substring Search Quiz

  • معرفی الگوریتم Knuth-Morris-Pratt Knuth-Morris-Pratt algorithm introduction

  • ساخت جدول تطبیق جزئی - تجسم Constructing the partial match table - visualization

  • اجرای الگوریتم Knuth-Morris-Pratt Knuth-Morris-Pratt algorithm implementation

  • آزمون الگوریتم Knuth-Morris-Pratt Knuth-Morris-Pratt Algorithm Quiz

  • معرفی الگوریتم Z Z algorithm introduction

  • تصویر الگوریتم Z Z algorithm illustration

  • پیاده سازی الگوریتم Z Z algorithm implementation

  • آزمون الگوریتم Z Z Algorithm Quiz

  • مقایسه الگوریتم های جستجوی زیر رشته ای Substring search algorithms comparison

  • کاربردهای جستجوی زیر رشته ای Applications of substring search

### الگوریتم های جستجوی زیر رشته ای ### ### SUBSTRING SEARCH ALGORITHMS ###

  • مقدمه جستجوی Brute-Force Brute-force search introduction

  • اجرای الگوریتم جستجوی زیر رشته ای Brute-Force Brute-force substring search algorithm implementation

  • آزمون جستجوی ساده زیر رشته ای Naive Substring Search Quiz

  • معرفی الگوریتم رابین-کارپ Rabin-Karp algorithm introduction

  • پیاده سازی الگوریتم رابین-کارپ Rabin-Karp algorithm implementation

  • مسابقه جستجوی زیر رشته Rabin-Karp Rabin-Karp Substring Search Quiz

  • معرفی الگوریتم Knuth-Morris-Pratt Knuth-Morris-Pratt algorithm introduction

  • ساخت جدول تطبیق جزئی - تجسم Constructing the partial match table - visualization

  • اجرای الگوریتم Knuth-Morris-Pratt Knuth-Morris-Pratt algorithm implementation

  • آزمون الگوریتم Knuth-Morris-Pratt Knuth-Morris-Pratt Algorithm Quiz

  • معرفی الگوریتم Z Z algorithm introduction

  • تصویر الگوریتم Z Z algorithm illustration

  • پیاده سازی الگوریتم Z Z algorithm implementation

  • آزمون الگوریتم Z Z Algorithm Quiz

  • مقایسه الگوریتم های جستجوی زیر رشته ای Substring search algorithms comparison

  • کاربردهای جستجوی زیر رشته ای Applications of substring search

### الگوریتم های مرتب سازی ### ### SORTING ALGORITHMS ###

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

  • ثبات در مرتب سازی چیست؟ What is stability in sorting?

  • مرتب سازی تطبیقی ​​چیست؟ What is adaptive sorting?

  • آزمون اصول مرتب سازی الگوریتم ها Sorting Algorithms Basics Quiz

  • معرفی مرتب سازی بوگو Bogo sort introduction

  • اجرای مرتب سازی بوگو Bogo sort implementation

  • مسابقه مرتب سازی بوگو Bogo Sort Quiz

  • مقدمه مرتب سازی حبابی Bubble sort introduction

  • اجرای مرتب سازی حبابی Bubble sort implementation

  • مقدمه مرتب سازی انتخابی Selection sort introduction

  • اجرای مرتب سازی انتخاب Selection sort implementation

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

  • مقدمه مرتب سازی درج Insertion sort introduction

  • پیاده سازی مرتب سازی درج Insertion sort implementation

  • مرتب سازی اشیاء سفارشی با مرتب سازی درج Sorting custom objects with insertion sort

  • راه حل - مرتب سازی اشیاء سفارشی با مرتب سازی درج Solution - sorting custom objects with insertion sort

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

  • معرفی مرتب سازی پوسته Shell sort introduction

  • اجرای مرتب سازی پوسته Shell sort implementation

  • امتحان مرتب سازی پوسته Shell Sort Quiz

  • معرفی Quicksort Quicksort introduction

  • مقدمه مرتب سازی سریع - مثال Quicksort introduction - example

  • اجرای مرتب سازی سریع Quicksort implementation

  • پارتیشن بندی Hoare و پارتیشن بندی Lomuto Hoare's partitioning and Lomuto's partitioning

  • بدترین سناریو برای مرتب سازی سریع چیست؟ What is the worst-case scenario for quicksort?

  • QuickSort Quiz QuickSort Quiz

  • مقدمه مرتب سازی ادغام Merge sort introduction

  • اجرای مرتب سازی ادغام Merge sort implementation

  • پشته حافظه و تجسم مرتب سازی را ادغام کنید Stack memory and merge sort visualization

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

  • معرفی الگوریتم های ترکیبی Hybrid algorithms introduction

  • الگوریتم های غیرمقایسه ای Non-comparison based algorithms

  • معرفی مرتب سازی شمارش Counting sort introduction

  • اجرای مرتب سازی شمارش Counting sort implementation

  • مقدمه مرتب سازی رادیکس Radix sort introduction

  • پیاده سازی مرتب سازی رادیکس Radix sort implementation

  • اندازه گیری تفاوت زمان اجرا Measure running time differences

  • امتحان مرتب‌سازی غیرمقایسه‌ای Non-Comparison Based Sorting Quiz

### الگوریتم های مرتب سازی ### ### SORTING ALGORITHMS ###

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

  • ثبات در مرتب سازی چیست؟ What is stability in sorting?

  • مرتب سازی تطبیقی ​​چیست؟ What is adaptive sorting?

  • آزمون اصول مرتب سازی الگوریتم ها Sorting Algorithms Basics Quiz

  • معرفی مرتب سازی بوگو Bogo sort introduction

  • اجرای مرتب سازی بوگو Bogo sort implementation

  • مسابقه مرتب سازی بوگو Bogo Sort Quiz

  • مقدمه مرتب سازی حبابی Bubble sort introduction

  • اجرای مرتب سازی حبابی Bubble sort implementation

  • مقدمه مرتب سازی انتخابی Selection sort introduction

  • اجرای مرتب سازی انتخاب Selection sort implementation

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

  • مقدمه مرتب سازی درج Insertion sort introduction

  • پیاده سازی مرتب سازی درج Insertion sort implementation

  • مرتب سازی اشیاء سفارشی با مرتب سازی درج Sorting custom objects with insertion sort

  • راه حل - مرتب سازی اشیاء سفارشی با مرتب سازی درج Solution - sorting custom objects with insertion sort

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

  • معرفی مرتب سازی پوسته Shell sort introduction

  • اجرای مرتب سازی پوسته Shell sort implementation

  • امتحان مرتب سازی پوسته Shell Sort Quiz

  • معرفی Quicksort Quicksort introduction

  • مقدمه مرتب سازی سریع - مثال Quicksort introduction - example

  • اجرای مرتب سازی سریع Quicksort implementation

  • پارتیشن بندی Hoare و پارتیشن بندی Lomuto Hoare's partitioning and Lomuto's partitioning

  • بدترین سناریو برای مرتب سازی سریع چیست؟ What is the worst-case scenario for quicksort?

  • QuickSort Quiz QuickSort Quiz

  • مقدمه مرتب سازی ادغام Merge sort introduction

  • اجرای مرتب سازی ادغام Merge sort implementation

  • پشته حافظه و تجسم مرتب سازی را ادغام کنید Stack memory and merge sort visualization

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

  • معرفی الگوریتم های ترکیبی Hybrid algorithms introduction

  • الگوریتم های غیرمقایسه ای Non-comparison based algorithms

  • معرفی مرتب سازی شمارش Counting sort introduction

  • اجرای مرتب سازی شمارش Counting sort implementation

  • مقدمه مرتب سازی رادیکس Radix sort introduction

  • پیاده سازی مرتب سازی رادیکس Radix sort implementation

  • اندازه گیری تفاوت زمان اجرا Measure running time differences

  • امتحان مرتب‌سازی غیرمقایسه‌ای Non-Comparison Based Sorting Quiz

سوالات مصاحبه (مرتب سازی) Interview Questions (Sorting)

  • الگوریتم TimSort TimSort algorithm

  • سوال مصاحبه شماره 1 - راه حل Interview question #1 - solution

  • مرتب سازی سریع با تکرار Quicksort with iteration

  • سوال مصاحبه شماره 2 - راه حل Interview question #2 - solution

  • مرتب سازی انتخاب با بازگشت Selection sort with recursion

  • سوال مصاحبه شماره 3 - راه حل Interview question #3 - solution

سوالات مصاحبه (مرتب سازی) Interview Questions (Sorting)

  • الگوریتم TimSort TimSort algorithm

  • سوال مصاحبه شماره 1 - راه حل Interview question #1 - solution

  • مرتب سازی سریع با تکرار Quicksort with iteration

  • سوال مصاحبه شماره 2 - راه حل Interview question #2 - solution

  • مرتب سازی انتخاب با بازگشت Selection sort with recursion

  • سوال مصاحبه شماره 3 - راه حل Interview question #3 - solution

### ضمیمه - درس تصادف نظریه پیچیدگی ### ### APPENDIX - COMPLEXITY THEORY CRASH COURSE ###

  • چگونه زمان اجرای الگوریتم ها را اندازه گیری کنیم؟ How to measure the running times of algorithms?

  • تصویر نظریه پیچیدگی Complexity theory illustration

  • نمادهای پیچیدگی - ordo بزرگ (O). Complexity notations - big (O) ordo

  • نمادهای پیچیدگی - Ω بزرگ (امگا) Complexity notations - big Ω (omega)

  • نمادهای پیچیدگی - تتا بزرگ (θ). Complexity notations - big (θ) theta

  • زمان اجرای الگوریتم Algorithm running times

  • کلاس های پیچیدگی Complexity classes

  • تجزیه و تحلیل الگوریتم ها - حلقه ها Analysis of algorithms - loops

### ضمیمه - درس تصادف نظریه پیچیدگی ### ### APPENDIX - COMPLEXITY THEORY CRASH COURSE ###

  • چگونه زمان اجرای الگوریتم ها را اندازه گیری کنیم؟ How to measure the running times of algorithms?

  • تصویر نظریه پیچیدگی Complexity theory illustration

  • نمادهای پیچیدگی - ordo بزرگ (O). Complexity notations - big (O) ordo

  • نمادهای پیچیدگی - Ω بزرگ (امگا) Complexity notations - big Ω (omega)

  • نمادهای پیچیدگی - تتا بزرگ (θ). Complexity notations - big (θ) theta

  • زمان اجرای الگوریتم Algorithm running times

  • کلاس های پیچیدگی Complexity classes

  • تجزیه و تحلیل الگوریتم ها - حلقه ها Analysis of algorithms - loops

مراحل بعدی Next Steps

  • مراحل بعدی Next steps

مراحل بعدی Next Steps

  • مراحل بعدی Next steps

مواد درسی (دانلود) Course Materials (DOWNLOADS)

  • دانلود مطالب دوره (اسلایدها و کد منبع) Download course materials (slides and source code)

مواد درسی (دانلود) Course Materials (DOWNLOADS)

  • دانلود مطالب دوره (اسلایدها و کد منبع) Download course materials (slides and source code)

نمایش نظرات

آموزش الگوریتم ها و ساختارهای داده در پایتون (مصاحبه پرسش و پاسخ)
جزییات دوره
23.5 hours
216
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
27,239
4.4 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Holczer Balazs Holczer Balazs

مهندس نرم افزار