Loading...
  • 5.0/5.0
  • (1 نظرات)
  • تعداد قسمت 63
  • مدت زمان 06:00:56
  • انتشار 1402/10/09
  • آخرین ویرایش 1402/10/09

سید ابولفضل موسوی

مدرس دانشسرا

ساختارهای داده و الگوریتم ها در پایتون

  • 5.0/5.0
  • تعداد مهارتجو 12
  • آخرین ویرایش 1402/10/09
  • انتشار 1403/01/31

توضیحات ساختارهای داده و الگوریتم ها در پایتون

پس از یادگیری زبان های برنامه نویسی، یکی از بزرگترین چالش ها، استفاده از ساختارهای داده مناسب برای پروژه است. در این دوره از ابتدایی ترین مفاهیم ساختارهای داده، از قبیل Big O، نشانگرها، کلاس‌ها و... تا مفاهیم پیچیده تر همچون، الگوریتم‌های مرتب سازی، توابع بازگشتی و... صحبت شده است. استفاده از الگوریتم های مرتب سازی و ساختارهای داده مناسب، همواره یکی از مهم ترین سوالات مصاحبه های استخدامی در سازمان های مختلف برای برنامه نویسان بوده است. در این دوره سعی شده است تا با ارائه مثال‌های کاربردی مناسب و استفاده از ابط گرافیکی مناسب، مسائل انتزاعی در چارچوبی قابل درک ارائه شود تا ارتباط ساختارهای مختلف در کنار یکدیگر معرفی شود و مزایا و معایب هر یک در جایگاه های مختلف بررسی شود. در این دوره از زبان برنامه نویسی پایتون، برای اجرا و ساختن ساختارهای داده مختلف استفاده می شود و انتظار می رود تا دانشجویان بر...

پس از یادگیری زبان های برنامه نویسی، یکی از بزرگترین چالش ها، استفاده از ساختارهای داده مناسب برای پروژه است. در این دوره از ابتدایی ترین مفاهیم ساختارهای داده، از قبیل Big O، نشانگرها، کلاس‌ها و... تا مفاهیم پیچیده تر همچون، الگوریتم‌های مرتب سازی، توابع بازگشتی و... صحبت شده است.



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



در این دوره از زبان برنامه نویسی پایتون، برای اجرا و ساختن ساختارهای داده مختلف استفاده می شود و انتظار می رود تا دانشجویان بر روی این زبان برنامه نویسی تسلط نسبی داشته باشند. همچنین روش های ارائه شده در این دوره قابل پیاده سازی بر روی انواع زبان های مختلف برنامه نویسی است.



موضوعات بررسی شده در این دوره:



بخش اول-مقدمات:




  • معرفی دوره

  • نصب VS CODE

  • Big O

  • بررسی بدترین حالت

  • O(n)

  • O(n2)

  • O(1)

  • O(logn)

  • Big O برای لیست ها

  • کلاس ها

  • نشانگرها



بخش دوم- Linked List:




  • معرفی Linked List

  • Big O برای Linked List

  • مقایسه لیست و Linked List

  • مفاهیم عمیق تر در Linked List

  • کلاس Linked List

  • دستور چاپ اعضا

  • اضافه کردن عضو به انتهای Linked List

  • حذف یک عضو از انتهای Linked List

  • اضافه کردن عضو به ابتدای Linked List

  • حذف یک عضو از ابتدای Linked List

  • بررسی یک عضو در Linked List

  • تغییر عضو در Linked List

  • افزودن یک عضو به Linked List

  • حذف یک عضو از Linked List

  • فرمان Reverse  در Linked List



بخش سوم- Doubly Linked List




  • معرفی ساختار داده Doubly Linked List

  • اضافه کردن عضو به انتهای Doubly Linked List

  • حذف یک عضو از انتهای Doubly Linked List

  • اضافه کردن یک عضو به ابتدای Doubly Linked List

  • حذف یک عضو از ابتدای Doubly Linked List

  • بررسی یک عضو در Doubly Linked List

  • تغییر بک عضو در Doubly Linked List

  • افزودن عضو به Doubly Linked List

  • حذف عضو در Doubly Linked List



بخش چهارم- Stacks:




  • معرفی Stack

  • دستور Push در Stack

  • دستور pop در Stack



بخش پنجم-Queue:




  • معرفی Queue

  • دستور enqueue در Queue

  • دستور dequeue در Queue



بخش ششم-Trees




  • معرفی درخت ها

  • Big O در درخت ها

  • کلاس درخت ها

  • اضافه کردن یک عضو به درخت

  • بررسی یک عضو در درخت



بخش هفتم-Hash Tables




  • معرفی Hash Tables

  • کلاس Hash Tables

  • اختصاص یک عضو به Hash Tables

  • دریافت یک عضو از Hash Tables

  • کلیدها در Hash Tables

  • Big O در Hash Tables



بخش هشتم- گراف ها




  • معرفی گراف ها

  • Big O در گراف ها

  • اضافه کردن یک عضو به گراف ها

  • کم کردن یک عضو از گراف ها



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




  • بررسی الگوریتم های بازگشتی و ساختن توابع بازگشتی



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




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

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

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

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

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



منابع بیشتر


قسمت های ساختارهای داده و الگوریتم ها در پایتون

1 - معرفی دوره

00:03:49


2 - آموزش نصب VS Code

00:06:20


3 - Big O

00:03:28


4 - بررسی بدترین حالت

00:02:14


5 - آشنایی با O(n)

00:03:34


6 - آشنایی با O(n2)

00:04:29


7 - آشنایی با O(1)

00:02:00


8 - آشنایی با O(logn)

00:05:53


9 - Big O برای لیست ها

00:05:40


10 - آشنایی Class

00:07:28


11 - آشنایی با اPointers

00:05:08


12 - معرفی Linked List

00:02:36


13 - Big O برای Linked List

00:06:57


14 - مقایسه لیست و Linked List

00:02:29


15 - مفاهیم عمیق تر در Linked List

00:03:21


16 - ساخت Constructor

00:06:17


17 - دستور چاپ اعضا

00:01:37


18 - آموزش اضافه کردن عضو به انتهای Linked List

00:04:55


19 - حذف یک عضو از انتهای Linked List

00:12:01


20 - اضافه و کم کردن عضو ابتدایی Linked List

00:11:11


21 - بررسی یک عضو در Linked List

00:04:54


22 - تغییر عضو در Linked List

00:03:50


23 - افزودن یک عضو به Linked List

00:09:52


24 - حذف یک عضو از Linked List

00:06:11


25 - فرمان Reverse در Linked List

00:07:45


26 - معرفی ساختار داده Doubly Linked List

00:04:00


27 - اضافه کردن عضو به انتهای Doubly Linked List

00:03:46


28 - حذف یک عضو از انتهای Doubly Linked List

00:06:35


29 - اضافه کردن یک عضو به ابتدای Doubly Linked List

00:03:15


30 - حذف یک عضو از ابتدای Doubly Linked List

00:04:33


31 - بررسی یک عضو در Doubly Linked List

00:05:19


32 - تغییر بک عضو در Doubly Linked List

00:02:19


33 - افزودن عضو به Doubly Linked List

00:05:05


34 - حذف عضو در Doubly Linked List

00:03:51


35 - معرفی Stack

00:06:16


36 - دستور Push در Stack

00:02:58


37 - دستور pop در Stack

00:02:34


38 - معرفی Queue

00:04:09


39 - دستور enqueue در Queue

00:03:16


40 - دستور dequeue در Queue

00:04:02


41 - معرفی درخت ها

00:07:29


42 - Big O در درخت ها

00:08:02


43 - constructor برای درخت ها

00:03:00


44 - اضافه کردن یک عضو به درخت

00:10:10


45 - بررسی یک عضو در درخت

00:06:42


46 - معرفی Hash Tables

00:06:42

مشاهده

47 - کلاس Hash Tables

00:07:18


48 - اختصاص یک عضو به Hash Tables

00:06:12


49 - دریافت یک عضو از Hash Tables

00:06:11


50 - کلیدها در Hash Tables

00:04:31


51 - Big O در Hash Tables

00:04:03


52 - معرفی گراف ها

00:08:24


53 - Big O در گراف ها

00:07:55


54 - اضافه کردن یک عضو به گراف ها

00:04:44


55 - کم کردن یک عضو از گراف ها

00:06:28


56 - بررسی الگوریتم های بازگشتی و ساختن توابع بازگشتی

00:16:06


57 - الگوریتم مرتب سازی Bubble

00:07:20

مشاهده

58 - الگوریتم مرتب سازی Selection

00:07:14


59 - الگوریتم مرتب سازی Insertion

00:06:11


60 - الگوریتم مرتب سازی Merge

00:10:55


61 - الگوریتم مرتب سازی Quick

00:17:05


62 - منابع بیشتر

00:02:17


63 - کدهای دوره

00:00:00

مشاهده

فایل پیوست ساختارهای داده و الگوریتم ها در پایتون

ساختارهای داده و الگوریتم ها در پایتون

---

سوالت را بپرس ...