ساختارهای داده و الگوریتمها - بخش 1
✅ سرفصل و جزئیات آموزش
آنچه یاد خواهید گرفت:
- مبانی ساختارهای داده خطی مانند آرایهها، استک، صف و لیست پیوندی و تفاوتهای بین ساختارهای داده استاتیک و پویا
- آرایههای تکبعدی، دوبعدی و چندبعدی و کدنویسی برای حل مسئله که از آرایهها استفاده میکند.
- ساختار داده استک و پیادهسازیهای آن به همراه مثال
- کاربردهای استک که به درک کاربرد آن در مسائل مختلف کمک میکند.
- ساختار داده صف، پیادهسازیها و کاربردهای آن همراه با مثال و کدنویسی مناسب
- لیستهای پیوندی مانند لیست پیوندی تکی لیست پیوندی دوطرفه، لیست پیوندی حلقوی و لیست پیوندی حلقوی دوطرفه
- دانشجویان قادر خواهند بود منطق حل هر مسئله که از ساختارهای داده خطی استفاده میکند را بنویسند.
پیشنیازهای دوره
- مبانی برنامهنویسی کافی است.
توضیحات دوره
این دوره مفاهیم و پیادهسازیهای ساختارهای داده خطی مانند آرایهها، استک ها، صفها و لیست پیوندی را پوشش میدهد. مثالهای مرتبط همراه با نمایشهای تصویری برای درک بهتر ارائه شدهاند. تفاوتهای بین ساختارهای داده استاتیک و پویا با پیادهسازیهای عملی بررسی شدهاند. کاربردهای استک، از جمله تبدیل Infix به Postfix، ارزیابی Postfix، تبدیل اعداد اعشاری به باینری و پالیندروم به طور مفصل با کدهای ساده توضیح داده شدهاند. همچنین کاربردهای صف مانند پیادهسازی استک با استفاده از یک صف یا دو صف به صورت دقیق بررسی شدهاند. معرفی لیستهای پیوندی و انواع آنها شامل لیست پیوندی تکی، لیست پیوندی حلقوی، لیست پیوندی دوطرفه و لیست پیوندی حلقوی دوطرفه به همراه عملیاتهای آنها مانند ایجاد گره، درج گره در موقعیتهای مختلف، حذف گره و پیمایش لیست پیوندی با کدهای ساده بیان شده است. این دوره همچنین شامل مبانی برنامهنویسی شیگرا مانند نوشتن توابع، ارسال پارامتر به توابع و فراخوانی آنها است. همچنین بر نوشتن constructors پیشفرض و پارامتری شده تأکید دارد. این دوره تقریباً 25 فایل منبع قابل دانلود شامل کدهای جاوا بر اساس مفاهیم دارد. دموی هر برنامه نیز در این دوره گنجانده شده است. تمامی فایلهای برنامه به صورت فایلهای متنی (txt) تهیه شدهاند تا کاربران بتوانند به آسانی از آنها استفاده کنند.
این دوره برای چه کسانی مناسب است؟
- افراد مبتدی که قصد یادگیری ساختارهای داده را دارند.
- دانشجویان کارشناسی و کارشناسی ارشد
- دانشجویانی که تحصیلات خود را به پایان رسانده و برای مصاحبههای شغلی آماده میشوند.
ساختارهای داده و الگوریتمها - بخش 1
-
مقدمه 01:00
-
نکات برجسته دوره 00:26
-
ملزومات - بخش 1 - توابع 02:42
-
ملزومات - بخش 2 - توابع 02:13
-
ملزومات - بخش 2 - برنامهها 02:33
-
ملزومات - بخش 3 - Constructors 03:07
-
تمرین برنامهنویسی - بخش 1 None
-
تمرین برنامهنویسی - بخش 2 None
-
تعریف ساختار داده و تایپهای آن 00:43
-
تایپهای ساختار داده 00:39
-
آرایهها - تعریف، تایپها و دلیل استفاده 03:03
-
مقدمه 02:29
-
چاپ اولین و آخرین عنصر و معکوس آرایه 03:27
-
یافتن مقدار حداقل و حداکثر در یک آرایه تک بعدی - منطق و برنامه 05:46
-
منطق جستجوی خطی 02:38
-
جستجوی خطی - برنامه 03:52
-
جستجوی باینری - رویه 06:56
-
جستجوی باینری - برنامه 03:55
-
یافتن عنصر گمشده در آرایه تک بعدی مرتب شده 03:54
-
یافتن عناصر گمشده - برنامه و خروجی 06:59
-
یافتن عنصر تکراری در آرایه تک بعدی 05:11
-
جابجایی اعداد منفی به یک سمت آرایه - منطق 02:02
-
جابجایی اعداد منفی در آرایه - برنامه و خروجی 03:50
-
یافتن جفت عناصر برای مجموع مشخص - منطق و برنامه 02:11
-
مقدمه 02:17
-
انواع ماتریسها - سطر، ستون، مستطیلی و مربع 01:41
-
انواع ماتریسها - همانی، اسکالر، قطری، مثلثی بالایی و غیره 07:28
-
ماتریس همانی 04:33
-
ماتریس قطری 02:23
-
ماتریس اسکالر 02:33
-
ترانهادگی یک ماتریس 01:47
-
چاپ ماتریس به صورت مارپیچی 04:03
-
چاپ ماتریس به صورت مارپیچی - برنامه 05:31
-
مسئله LeetCode روی آرایه - یافتن عنصر داپلیکیت 02:56
-
مسئله LeetCode روی آرایه - بهترین زمان خرید و فروش سهام 06:01
-
مسئله LeetCode روی آرایه - عنصر اکثریت 06:00
-
مسئله LeetCode روی آرایه - چرخش تصویر 06:59
-
مسئله LeetCode روی آرایه - حداکثر آرایه فرعی 04:28
-
مسئله LeetCode روی آرایه - مرتبسازی رنگها 04:06
-
مسئله LeetCode - پیادهسازی تابع توان 04:33
-
مسئله LeetCode - تعداد آرایههای فرعی با حداکثر محدود 04:04
-
مقدمه 02:40
-
کاربردهای ماتریس پراکندگی 02:53
-
نمایش ماتریس پراکندگی در فرمت سهتایی 02:05
-
نمایش ماتریس پراکندگی در فرمت CSR 06:11
-
عملیاتهای ماتریس پراکندگی - جمع 03:40
-
عملیاتهای ماتریس پراکندگی - ترانهاده کردن 05:27
-
عملیاتهای ماتریس پراکندگی - ضرب 06:13
-
پیادهسازی ماتریس پراکندگی در فرمت سهتایی (سطر، ستون، مقدار) 03:45
-
پیادهسازی ماتریس پراکندگی به فرمت سطر، ستون، مقدار 08:40
-
پیادهسازی فرمت CSR 07:26
-
پیادهسازی جمع ماتریس پراکندگی 05:12
-
پیادهسازی جمع ماتریس پراکندگی - برنامه 15:28
-
الگوریتم تطبیق الگو - بروت فورس 08:01
-
الگوریتم تطبیق الگو - Horspool 13:23
-
تحلیل الگوریتم - مثالهای 1 07:24
-
تحلیل الگوریتم - مثالهای 2 03:52
-
تحلیل الگوریتمها - جستجوی خطی و یافتن داپلیکیتها 08:28
-
تحلیل مجانبی 02:16
-
قوانین تحلیل مجانبی 04:17
-
کارایی الگوریتمها 03:54
-
تحلیل مرتبسازی 11:05
-
مرتبسازی حبابی 12:00
-
نسخه بهینه شده مرتبسازی حبابی 05:02
-
مرتبسازی درجی 05:05
-
اجرای مرتبسازی درجی برای ورودی نمونه 07:45
-
اجرای مرتبسازی درجی و تحلیل آن 06:14
-
مرتبسازی انتخابی 02:45
-
پیادهسازی مرتبسازی انتخابی 13:39
-
تحلیل مرتبسازی انتخابی 04:06
-
مرتبسازی ادغامی - بازگشتی 04:08
-
مرتبسازی ادغامی - فراخوانیهای بازگشتی 10:11
-
نحوه کار ادغام - رویه 06:35
-
مرتبسازی ادغامی - تکرارشونده 11:24
-
تحلیل مرتبسازی ادغامی 09:38
-
مرتبسازی شمارشی 06:21
-
پیادهسازی مرتبسازی شمارشی 10:18
-
مرتبسازی سریع 04:34
-
آرایه در مقابل ArrayList 05:11
-
مقدمه استک و عملیاتهای استک 02:48
-
رویه Push و Pop در استک 02:16
-
پیادهسازی استک با استفاده از آرایهها 05:48
-
کاربرد 1 - Infix به Postfix 04:40
-
تبدیل Infix به Postfix - مثال 03:25
-
Infix به Postfix - برنامه 06:42
-
کاربرد 2 - ارزیابی عبارت Postfix 04:36
-
کاربرد 3 - معکوس رشته 11:36
-
کاربرد 4 - تبدیل اعداد اعشاری به باینری با استفاده از استک 02:42
-
تبدیل عدد اعشاری به باینری - برنامه 02:54
-
کاربرد 5 - یافتن K امین عنصر بزرگ با استفاده از استک 06:50
-
یافتن K امین عنصر بزرگ با استفاده از استک - الگوریتم 01:19
-
یافتن Kامین عنصر بزرگ با استفاده از استک - برنامه و خروجی 08:26
-
مقدمه صف و عملیاتهای آن 05:24
-
خلاصه درج و حذف در صف با استفاده از آرایهها 02:28
-
پیادهسازی صف با استفاده از آرایه 08:27
-
کاربرد 1 - پیادهسازی استک با استفاده از دو صف 06:41
-
پیادهسازی استک با استفاده از دو صف - بخش 1 03:23
-
پیادهسازی استک با استفاده از دو صف - بخش 2 03:42
-
کاربرد 2 - پیادهسازی استک با استفاده از یک صف - بخش 1 05:23
-
پیادهسازی استک با استفاده از یک صف 01:29
-
پیادهسازی استک با استفاده از یک صف - برنامه 04:35
-
پیادهسازی استک با استفاده از یک صف - برنامه 04:26
-
پیادهسازی استک با استفاده از یک صف - برنامه 01:21
-
کاربرد 3 - بررسی پالیندروم با استفاده از صف 05:59
-
آشنایی با لیست پیوندی تکی 03:56
-
انواع لیستهای پیوندی 03:05
-
کلاس لیست پیوندی - توابع داخلی - بخش 1 07:51
-
کلاس لیست پیوندی - توابع داخلی - بخش 2 04:54
-
لیست پیوندی - ایجاد گره 02:35
-
لیست پیوندی - درج گره - درج گره در ابتدای لیست پیوندی 03:44
-
لیست پیوندی - درج گره - درج گره در انتهای لیست پیوندی 05:20
-
لیست پیوندی - درج گره - درج گره در موقعیت مشخص در لیست پیوندی 04:24
-
درج گره در ابتدا - برنامه 03:40
-
درج گره در انتها - برنامه 01:34
-
درج گره در موقعیت مشخص - برنامه 03:09
-
حذف گره از ابتدا در لیست پیوندی با استفاده از کلید 01:28
-
حذف گره از انتهای لیست پیوندی با استفاده از کلید 02:36
-
اجرای برنامه حذف 01:45
-
نمایش لیست پیوندی 02:18
-
پیادهسازی استک با استفاده از لیست پیوندی تکی 03:31
-
پیادهسازی صف با استفاده از لیست پیوندی تکی 05:27
-
مسئله LeetCode - معکوس لیست پیوندی 03:21
-
مسئله LeetCode - حذف گره 02:11
-
مسئله LeetCode - بررسی پالیندروم 06:06
-
مسئله LeetCode - یافتن گره میانی 02:58
-
آشنایی با لیست پیوندی حلقوی 01:53
-
کاربردها و عملیاتهای لیست پیوندی حلقوی 03:18
-
درج در ابتدای لیست پیوندی حلقوی 05:45
-
درج در انتهای لیست پیوندی حلقوی 02:16
-
درج در موقعیت مشخص در لیست پیوندی حلقوی 06:56
-
پیمایش لیست پیوندی حلقوی 02:42
-
حذف گره از لیست پیوندی حلقوی - حالت 1 02:26
-
حذف گره از لیست پیوندی حلقوی - حالت 2 01:44
-
حذف گره در لیست پیوندی حلقوی - حالت 3 03:44
-
حذف گره از لیست پیوندی حلقوی - حالت 4 03:04
-
حذف گره در لیست پیوندی حلقوی - حالت 5 03:11
-
پیادهسازی لیست پیوندی حلقوی - برنامه 03:55
-
آشنایی با لیست پیوندی دوطرفه 05:50
-
درج گره در ابتدا در لیست پیوندی دوطرفه 06:15
-
درج گره در انتهای لیست پیوندی دوطرفه 04:12
-
درج گره بعد از گره مشخص شده در لیست پیوندی دوطرفه 03:47
-
درج گره قبل از گره مشخص شده در لیست پیوندی دوطرفه 03:18
-
حذف گره در لیست پیوندی دوطرفه برای موقعیت مشخص - بخش 1 05:51
-
حذف گره در لیست پیوندی دوطرفه برای موقعیت مشخص - بخش 2 04:52
-
آشنایی با لیست پیوندی حلقوی دوطرفه و درج در انتهای لیست 05:59
-
درج گره در ابتدای لیست پیوندی حلقوی دوطرفه 02:21
-
درج گره بعد از گره مشخص شده در لیست پیوندی حلقوی دوطرفه 02:59
-
حذف گره با کلید در لیست پیوندی حلقوی دوطرفه - حالت 1 01:20
-
حذف گره با کلید در لیست پیوندی حلقوی دوطرفه - حالت 2 03:36
-
حذف گره با کلید در لیست پیوندی حلقوی دوطرفه - حالت 3 03:29
-
نمایش لیست پیوندی دوطرفه به صورت پیشرو 02:29
-
نمایش لیست پیوندی دوطرفه به صورت معکوس 01:43
-
اجرای برنامه لیست پیوندی دوطرفه 03:10
-
کاربرد لیست پیوندی حلقوی دوطرفه 02:45
مشخصات آموزش
ساختارهای داده و الگوریتمها - بخش 1
- تاریخ به روز رسانی: 1404/12/10
- سطح دوره:همه سطوح
- تعداد درس:154
- مدت زمان :11:36:18
- حجم :4.31GB
- زبان:دوبله زبان فارسی
- دوره آموزشی:AI Academy