×
ribbon

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

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

ارائه دهنده:  دانشگاه صنعتی شیراز  دانشگاه صنعتی شیراز
4.6 (21 رای)
سطح: مقدماتی
 رایگان
  
زمان مورد نیاز برای گذارندن دوره:  29 جلسه
مجموع محتوای آموزشی:  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  

درباره دوره

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

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

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

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

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

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

 

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

درباره استاد

maktabkhooneh-teacher رسول اسماعیلی‌فرد

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

مشاهده پروفایل و دوره‌‌های استاد

نظرات کاربران  ( نظر)

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

دوره‌های پیشنهادی

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

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

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

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

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

آیا امکان دریافت فیلم های یک درس به صورت سی دی یا دی وی دی وجود دارد؟
در حال حاضر امکان ارسال دروس به صورت سی دی یا دی وی دی وجود ندارد.
poster
  
برگزار کننده:  دانشگاه صنعتی شیراز
  
زمان مورد نیاز برای گذارندن دوره:  29 جلسه
مجموع محتوای آموزشی:  29 ساعت ویدئو
 (قابل دانلود می‌باشد)