00:00 / 00:00
1.8x
1.4x
1.0x
0.7x
HD SD
HD
SD
ثبت‌نام رایگان
  • دسترسی به کل جلسات ویدیویی از دوره
  • دسترسی به کل جلسات ویدیویی از دوره
  • اضافه شدن دوره به پروفایل
00:00 / 00:00
1.8x
1.4x
1.0x
0.7x
HD SD
HD
SD

آموزش رایگان ساختمان داده‌ها

دوره‌های رایگان
29 جلسه
97٪ (406 رای)

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

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

در علم کامپیوتر، یک ساختمان‌داده هنر سازمان دادن به داده‌ها، مدیریت و قالب‌بندی ذخیره داده‌ها است که امکان دسترسی و تغییر کارآمد داده‌ها را فراهم می‌کند. به شکل دقیق‌تر، یک ساختمان‌داده مجموعه‌ای از مقادیر داده، ارتباط بین آن‌ها، عملگرها و توابعی است که بر روی داده‌ها اعمال می‌شود. این سازمان‌ دادن به داده‌ها در کنار یکدیگر از طریق یک مدل منطقی، ریاضی یا شکل خاص انجام می‌گیرد. بدین شکل، ساختمان‌داده‌ها توانمندی مدیریت حجم بسیاری بالایی از داده‌ها را به شکل مؤثر برای استفاده‌هایی نظیر پایگاه‌های داده بزرگ و سرویس‌های جستجوی اینترنت، نظیر کاری که گوگل انجام می‌دهد، را برای ما فراهم می‌کنند. معمولاً، ساختمان‌های داده کارا، راهبرد اصلی طراحی الگوریتم‌های کارا هستند.

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

بدین منظور، هر ساختمان‌داده در قالب یک نوع داده انتزاعی یا Abstract Data Type (ADT) ارائه می‌شود که یک نوع داده و شکل منطقی آن را در اختیار ما قرار می‌دهد. این طراحی انواع داده، خود زمینه‌ای را برای طراحی نرم‌افزار ایجاد می‌کنند.

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

 

*****فایل‌های کد منبع مورد استفاده و فیلم نحوه استفاده از کدهای منبع (Source Code) در جلسه آخر قرار داده شده‌است*****

سرفصل‌های دوره آموزش رایگان ساختمان داده‌ها

ساختمان داده‌ها
29:13 ساعت
29:13
Combined Shape Created with Sketch. 29 جلسه
جلسه 1: مقدمه و معرفی ساختمان داده‌ها
"43:33
جلسه 2: آرایه
"33:36
جلسه 3: لیست پیوندی یک‌طرفه
"43:28
جلسه 4: لیست پیوندی دوطرفه
"30:40
جلسه 5: تحلیل الگوریتم‌ها (بخش اول)
"63:54
جلسه 6: تحلیل الگوریتم‌ها (بخش دوم)
"62:02
جلسه 7: بازگشت (بخش اول)
"66:14
جلسه 8: بازگشت (بخش دوم)
"74:14
جلسه 9: پشته
"82:10
جلسه 10: صف
"50:25
جلسه 11: لیست موقعیت دار
"71:17
جلسه 12: تکرار کننده‌ها (Iterators)
"39:40
جلسه 13: درخت‌ها (بخش اول)
"81:09
جلسه 14: درخت‌ها (بخش دوم)
"55:20
جلسه 15: درخت‌ها (بخش سوم)
"70:06
جلسه 16: صف‌های اولویت
"81:38
جلسه 17: کپه‌ها (Heaps)
"69:25
جلسه 18: مرتب سازی با صف اولویت
"84:01
جلسه 19: نگاشت‌ها (Maps)
"75:10
جلسه 20: جداول درهم سازی (بخش اول)
"58:58
جلسه 21: جداول درهم سازی (بخش دوم)
"60:55
جلسه 22: نگاشت‌های مرتب شده
"53:34
جلسه 23: لیست‌های جهشی (Skip Lists)
"52:19
جلسه 24: درختان جستجوی دودویی
"104:21
جلسه 25: درختان جستجوی متوازن
"54:37
جلسه 26: درختان AVL
"48:07
جلسه 26: گراف (بخش اول)
"67:09
جلسه 28: گراف (بخش دوم)
"63:58
فایل‌های منبع (Source Code) مورد استفاده در آموزش و نحوه استفاده از آن
"11:53
استاد دوره
رسول اسماعیلی‌فرد رسول اسماعیلی‌فرد

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

اطلاعات بیشتر
درباره برگزارکننده
دانشگاه صنعتی شیراز دانشگاه صنعتی شیراز

نظرات  (3 نظر)

کاربر مکتب‌خونه
13:28 - 1399/12/23
کاربر‌ سایت
لطفا Source Code های دوره را هم قرار دهید. فهم کامل این آموزش بدون داشتن کد ها کمی سخت می‌شود. (مباحث پایانی مانند AVL trees) با تشکر از سایت خوب شما و تدریس آقای اسماعیلی ‌فرد.
پشتیبانی مکتب‌خونه
همراه عزیز؛ با سپاس از نظر شما. فایل‌های کد منبع مورد استفاده و فیلم نحوه استفاده از کدهای منبع (Source Code) در جلسه آخر قرار داده شده‌است.
مهدی
15:36 - 1399/11/16
کاربر‌ سایت
از منظر روش تدریس و تسلط بسیار خوب هستن و توضیحات رو به قدر کافی (یا حتی بیشتر و با ذکر جزئیات بیان میکنن ) . اشاره مکفی به نحوه پیاده سازی هم یکی از نکات خوب هست . فقط شاید اگر در محیط اجرای کد پیاده سازی ها انجام میشد و همزمان اجرا میشد تاثیر بیشتری در درک مفاهیم داشت . از نکاتی که توجه من رو جلب کرد خط بسیار زیبای استاد بود . ایشون هم فارسی و هم انگلیسی رو خیلی زیبا مینویسن و به شخصه لذت بردم از این مسئله . در نهایت ای کاش میشد کیفیت صدا یک مقدار بهتر میبود اگرچه جایی وجود نداره که نشه فهمید ، ولی یکم صدای پس زمینه اذیت کننده هست.
پشتیبانی مکتب‌خونه
مهدی عزیز؛ از اینکه نظر خود را با ما در میان گذاشتید صمیمانه سپاسگزاریم موارد مطرح شده جهت بررسی به بخش مربوطه ارسال شد.
کاربر مکتب‌خونه
12:18 - 1399/10/08
کاربر‌ سایت
عالیه روش درس دادنشون به شدت پیشنهاد میشه فقط حیف که محتوا به این خوبی ولی کیفیت صدا مناسب نیست درصورتی که خیلی از افراد تو یوتیوب با هیچ دانشی به واسطه افکت های تصویری و ابزار های حرفه ای بیننده بسیار جذب میکنند

سوالات پرتکرار

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

×

ثبت نظر

به این دوره از ۱ تا ۵ چه امتیازی می‌دهید؟

ساختمان داده‌ها
29:13 ساعت
29:13
Combined Shape Created with Sketch. 29 جلسه
جلسه 1: مقدمه و معرفی ساختمان داده‌ها
"43:33
جلسه 2: آرایه
"33:36
جلسه 3: لیست پیوندی یک‌طرفه
"43:28
جلسه 4: لیست پیوندی دوطرفه
"30:40
جلسه 5: تحلیل الگوریتم‌ها (بخش اول)
"63:54
جلسه 6: تحلیل الگوریتم‌ها (بخش دوم)
"62:02
جلسه 7: بازگشت (بخش اول)
"66:14
جلسه 8: بازگشت (بخش دوم)
"74:14
جلسه 9: پشته
"82:10
جلسه 10: صف
"50:25
جلسه 11: لیست موقعیت دار
"71:17
جلسه 12: تکرار کننده‌ها (Iterators)
"39:40
جلسه 13: درخت‌ها (بخش اول)
"81:09
جلسه 14: درخت‌ها (بخش دوم)
"55:20
جلسه 15: درخت‌ها (بخش سوم)
"70:06
جلسه 16: صف‌های اولویت
"81:38
جلسه 17: کپه‌ها (Heaps)
"69:25
جلسه 18: مرتب سازی با صف اولویت
"84:01
جلسه 19: نگاشت‌ها (Maps)
"75:10
جلسه 20: جداول درهم سازی (بخش اول)
"58:58
جلسه 21: جداول درهم سازی (بخش دوم)
"60:55
جلسه 22: نگاشت‌های مرتب شده
"53:34
جلسه 23: لیست‌های جهشی (Skip Lists)
"52:19
جلسه 24: درختان جستجوی دودویی
"104:21
جلسه 25: درختان جستجوی متوازن
"54:37
جلسه 26: درختان AVL
"48:07
جلسه 26: گراف (بخش اول)
"67:09
جلسه 28: گراف (بخش دوم)
"63:58
فایل‌های منبع (Source Code) مورد استفاده در آموزش و نحوه استفاده از آن
"11:53