ساختارهای داده و الگوریتمها با جاوا
✅ سرفصل و جزئیات آموزش
آنچه یاد خواهید گرفت:
- برنامهنویسی اولیه جاوا - سینتکس، تایپهای داده، ساختارهای کنترل، توابع و مدیریت استثنا
- برنامهنویسی شیگرا (OOP) - مفاهیمی مانند کلاسها، آبجکتها، وراثت، پلیمورفیسم، انتزاع و کپسولهسازی در جاوا
- اصول طراحی - اصول استاندارد صنعت مانند SOLID، DRY و KISS و YAGNI برای نوشتن کد تمیز و قابل نگهداری
- الگوهای طراحی و کدنویسی ماشین - آشنایی با الگوهای طراحی رایج و نحوه نزدیک شدن به مراحل کدنویسی ماشین در مصاحبهها
- ساختارهای داده خطی - پیادهسازی و یوزکیسهای آرایهها، ArrayLists، لیستهای پیوندی، استکها، صفها و HashMaps در جاوا
- ساختارهای داده غیرخطی – درک درختها (BST و AVL)، Heaps (Min و Max)، Tries و گرافها همراه با الگوریتمهای پیمایش مانند DFS و BFS
- دستکاری بیتها – درک عمیق از عملکرد بیتها، از جمله تبدیلهای باینری-اعشاری و عملیاتهای سطح پایین
- پیچیدگی زمان و فضا - یاد میگیرید چگونه کارایی کد خود را با استفاده از حاشیهنویسی Big-O تحلیل کنید.
پیشنیازهای دوره
- آشنایی اولیه با مفاهیم برنامهنویسی (مفید است اما اجباری نیست.)
توضیحات دوره
به دوره جامع برنامهنویسی جاوا از پیوش گارگ خوش آمدید، دورهای طراحی شده برای مبتدیان، علاقهمندان سطح متوسط و توسعهدهندگان باتجربه که میخواهند به جاوا و ساختارهای داده از پایه مسلط شوند.
در این دوره جامع، با اصول اولیه جاوا شروع میکنیم، که سینتکس، برنامهنویسی شیگرا و اصول اساسی طراحی مانند SOLID و DRY و KISS را در بر میگیرد. چه تازهکار باشید و چه دانشجوی دانشگاه که میخواهد مهارتهای جاوا را تقویت کند، این دوره راهنمای شماست. ما به تدریج پیش میرویم تا درک کاملاً شفافی از هر مبحث فراهم کنیم.
جاوا، به عنوان پرطرفدارترین زبان برنامهنویسی، توانایی پشتیبانی از بیش از ۹۰٪ شرکتهای Fortune 500، برنامههای اندروید و سیستمهای مالی را دارد. پشتیبانی قوی این زبان از OOP آن را به گزینهٔ ایدهآل برای مهندسان نرمافزار آیندهنگر تبدیل کرده است.
شما همچنین یاد میگیرید که هر دو دسته ساختارهای داده خطی و غیرخطی را پیاده کرده و با آنها کار کنید. در بخش خطی، آرایهها، ArrayLists، لیستهای پیوندی، استکها، صفها و HashMaps - بلوکهای سازنده هر برنامه کارآمد - را پوشش میدهیم. سپس به مباحث پیشرفته مانند درختها (BST و AVL)، Heaps (Min و Max)، Tries و گرافها، همراه با الگوریتمهای پیمایش کلیدی مانند DFS و BFS میپردازیم.
این دوره با چالشهای کدنویسی فراوانی همراه است تا مفاهیم را تقویت کرده و شما را برای مصاحبههای فنی و مراحل کدنویسی ماشین آماده کند.
در پایان دوره، شما در زبان جاوا اعتمادبهنفس دارید و میتوانید به ساختارهای داده و الگوریتمها به آسانی تسلط یابید.
این دوره برای چه کسانی مناسب است؟
- مبتدیانی که میخواهند برنامهنویسی را شروع کرده و به دنبال مقدمهای ساختاریافته و مبتدی پسند با مفاهیم اولیه جاوا و برنامهنویسی هستند.
- دانشجویان دانشگاه که علوم کامپیوتر یا رشتههای مرتبط را را دنبال کرده و میخواهند پایهای قوی در جاوا و ساختارهای داده بسازند.
- مهندسان نرمافزار آینده که برای کارآموزیها، مصاحبههای شغلی و مراحل کدنویسی ماشین در شرکتهای فناوری برتر آماده میشوند.
- توسعهدهندگان جاوا که میخواهند درک مفاهیم پایه، OOP و ساختارهای داده را رفرش یا عمیقتر کنند.
- علاقهمندان برنامهنویسی رقابتی که میخواهند درک بهتری از پیادهسازی ساختارهای داده پیچیده در جاوا پیدا کنند.
- حرفهایهایی که برای مصاحبههای فنی آماده میشوند و به بازبینی قوی از ساختارهای داده خطی و غیرخطی با استفاده از جاوا نیاز دارند.
ساختارهای داده و الگوریتمها با جاوا
-
جاوا چگونه عمل میکند؟ 10:01
-
راهاندازی جاوا و IntelliJ IDEA 06:27
-
Hello World 08:46
-
تایپهای داده در جاوا 24:41
-
تایپهای داده Non Primitive 10:02
-
متغیرها و ثابتها در جاوا 12:09
-
عملگرهای اولیه حساب 09:35
-
دریافت ورودی از کاربر 09:57
-
دستورات شرطی در جاوا 24:45
-
دستورات switch در جاوا 13:17
-
حلقهها در جاوا 20:31
-
آرایهها چه هستند؟ 12:50
-
آرایهها در جاوا - بخش 1 08:10
-
آرایهها در جاوا - بخش ۲ 15:50
-
آرایههای دوبعدی در جاوا 14:07
-
آرایههای پویا با استفاده از لیستها 05:39
-
استثنا و مدیریت استثنا 07:21
-
ساختار داده آرایه 04:50
-
ساختار داده HashMap 04:29
-
ساختار داده مجموعه 03:38
-
آشنایی با OOP 11:27
-
مزایای OOP 03:49
-
متدها و کلیدواژه this 13:43
-
Constructor 07:06
-
Getters و Setters 06:57
-
کلیدواژه استاتیک 09:18
-
ارکان OOPS - بخش 1 10:12
-
ارکان OOPS - بخش 2 11:55
-
کلاسها و متدهای انتزاعی 07:15
-
رابطها 07:08
-
سوال تمرینی 1 - OOPS 21:47
-
اصل DRY 06:00
-
KISS و YAGNI 02:43
-
اصول S.O.L.I.D 11:48
-
الگوی طراحی سینگلتون 14:17
-
الگوی طراحی فکتوری 09:31
-
الگوی طراحی بیلدر 08:54
-
الگوی طراحی آداپتور 11:34
-
الگوی طراحی پل 08:19
-
الگوی طراحی پروکسی 05:50
-
الگوی طراحی فرمان 09:34
-
الگوی طراحی ناظر 09:14
-
الگوی طراحی Iterator 06:39
-
پیچیدگی فضا و زمان 09:59
-
پیچیدگی زمان-فضا ثابت 08:28
-
پیچیدگی زمان-فضا خطی 17:08
-
DSA چیست؟ 08:31
-
پیچیدگی زمان-فضا لگاریتمی 15:34
-
پیچیدگی زمان-فضا درجه دوم 09:23
-
خلاصه سریع 03:40
-
مبانی سیستمهای عددی باینری و اعشاری 30:12
-
عملگرهای بیتی 16:56
-
شیفت به چپ و شیفت به راست 24:11
-
شمارش بیتها 04:54
-
تبدیل باینری به اعشاری 04:47
-
تبدیل اعشاری به باینری 04:32
-
معکوس و عدد صحیح 11:23
-
توان دو 06:45
-
مکمل عدد صحیح با مبنای 10 20:55
-
عدد اول 09:59
-
غربال اراتستن 18:24
-
فاکتریل عدد 05:19
-
آشنایی با بازگشت 16:04
-
X به توان n 07:07
-
مقدمه 01:51
-
شروع کار با آرایهها 15:04
-
درک تخصیص حافظه 08:02
-
آرایههای پویا 03:37
-
ایجاد آرایه از ابتدا 10:15
-
یافتن ایندکس با استفاده از جستجوی خطی 06:07
-
حذف عناصر 14:07
-
حداقل و حداکثر در آرایه 05:05
-
معکوس آرایه 12:30
-
افزودن پشتیبانی برای آرایههای پویا با اندازه پویا 04:20
-
عدد واحد 13:54
-
دو جمع 16:40
-
مرتبسازی رنگها 24:48
-
ادغام آرایههای مرتب 22:36
-
جابجایی صفرها 15:37
-
تقاطع آرایهها 17:44
-
بررسی مرتبسازی و چرخش آرایه 08:44
-
مقدمه 05:53
-
درک تخصیص حافظه 08:38
-
کار با لیست پیوندی داخلی 03:14
-
انواع لیست پیوندی 06:46
-
ساخت لیست پیوندی از ابتدا 22:06
-
پیمایش لیست پیوندی 06:16
-
معکوس لیست پیوندی 20:28
-
حذف گره از ابتدای لیست 05:58
-
حذف گره از انتهای لیست 06:33
-
گره k ام از انتها 25:40
-
پیمایش لیست پیوندی 14:22
-
معکوس لیست پیوندی 14:15
-
تعویض جفتها 17:40
-
معکوس در گروههای K 15:47
-
تشخیص چرخهای 06:21
-
یافتن وسط لیست پیوندی 01:54
-
تشخیص و حذف حلقه 10:46
-
حذف داپلیکیتها 05:28
-
مقدمه 05:56
-
کار با کلاس استک 08:33
-
ایجاد استک خود 10:39
-
حذف عناصر از بالا 05:08
-
نمایش عناصر بالا 02:24
-
سرریز استک 02:03
-
Underflow استک 01:49
-
ایجاد استک با استفاده از لیستپیوندی 04:34
-
دو استک 16:40
-
معکوس رشتهها 03:19
-
پرانتزهای معتبر 13:10
-
درج یک عنصر در پایین آن 11:52
-
معکوس استک 07:12
-
مرتبسازی استک 08:27
-
پرانتزهای زائد 14:15
-
مسئله سلبریتی 16:30
-
Min Stack O(n) 13:22
-
Min Stack O(1) 13:59
-
مقدمه 04:46
-
کار با صفها در جاوا 08:39
-
معکوس صف 04:17
-
ایجاد صف خود 06:50
-
Dequeue از صف 05:04
-
باگ در صف 04:13
-
فیکس کردن باگ در آرایههای دایرهای 06:28
-
ایجاد صف با استفاده از استکها 07:22
-
صفهای اولویت 03:42
-
ساخت صف اولویت 08:58
-
طراحی صف دایرهای 06:13
-
طراحی صف با دو سر 16:37
-
معکوس صف با استفاده از بازگشت 02:40
-
اولین عدد صحیح منفی در پنجره با اندازه K 14:51
-
معکوس نخستین K عنصر صف 10:11
-
ادغام نیمه اول صف با نیمه دوم 06:53
-
مقدمه 02:17
-
HashMap در جاوا 06:38
-
کاراکترهای غیرتکراری 06:01
-
اولین کاراکتر تکراری 02:47
-
تابع هش 09:44
-
آدرسدهی باز 05:41
-
هش کردن دوگانه 04:40
-
ساخت HashMap خود 09:31
-
زنجیرهسازی 06:49
-
دریافت داده 03:59
-
Probing مربعی 05:10
-
حذف داده 03:17
-
مقدمه 03:22
-
مقدمه 11:47
-
درک درختهای باینری و درختهای جستجوی باینری 15:51
-
ساخت درخت جستجوی باینری 13:11
-
Travelling گرهها 08:37
-
یافتن عنصر در درخت 07:12
-
پیمایشهای درخت 04:19
-
Pre-Order 08:10
-
In-Order 06:42
-
Post-Order 06:45
-
عمق و ارتفاع 18:13
-
حداقل مقدار در درخت 02:19
-
چک کردن تساوی 06:12
-
اعتبارسنجی درخت باینری 19:41
-
گرهها در فاصله K 08:24
-
پیمایش Level Order 19:48
-
قطر 21:34
-
متوازن است یا خیر 14:43
-
درخت مجموع یا خیر 10:56
-
پیمایش زیگ-زاگ 10:48
-
پیمایش مرزی 10:31
-
پیمایش عمودی 12:57
-
View بالا 07:53
-
View پایین 02:25
-
View راست 06:31
-
پیمایش قطری 07:17
-
جمع گرههای طولانیترین مسیر 06:12
-
LCA در درخت باینری 09:51
-
حداقل زمان برای سوختن درخت 19:47
-
پیمایش موریس 19:46
-
مسطح کردن درخت باینری 13:22
-
In-order Predecessor و In-order Succesor 17:01
-
k امین عنصر کوچک و بزرگ در BST 12:41
-
LCA در BST 04:17
-
BST نرمال به متعادل 10:47
-
ادغام دو درخت باینری 03:48
-
بزرگترین BST در درخت باینری 15:32
-
مقدمه 11:52
-
درک چرخشها 07:35
-
چرخشهای LeftRight و RightLeft 06:14
-
ایجاد درخت AVL از ابتدا 06:54
-
تشخیص گره نامتعادل 08:15
-
تشخیص چرخشها - بخش 1 04:46
-
تشخیص چرخشها - بخش 2 05:12
-
پیادهسازی چرخشهای چپ و راست 10:05
-
مقدمه 15:41
-
منطق درج در Heap 19:58
-
ایجاد Heap از ابتدا 12:07
-
منطق حذف عنصر 19:42
-
Heap سازی 24:15
-
k امین عنصر کوچک 16:10
-
بررسی اینکه آیا درخت باینری یک Max Heap معتبر است 15:37
-
کوچکترین بازه در K لیست 45:16
-
مقدمه 25:48
-
ساخت Trie از ابتدا 28:11
-
Autocomplete با Trie 26:50
-
حذف عناصر از Trie 19:51
-
طولانیترین پیشوند مشترک 17:11
-
مقدمه 17:15
-
ماتریس مجاورت و لیست مجاورت 08:58
-
ساخت گراف از ابتدا 11:51
-
پیمایش - جستجوی عرض اول 17:03
-
پیمایش - جستجوی عمق اول 08:18
-
تشخیص چرخهای در گراف 15:30
-
مرتبسازی توپولوژیک 15:47
-
الگوریتم کان 09:54
-
ریفکتور کردن گرافها به سبک OOPS 08:30
-
ساخت گراف جهتدار وزنی 12:25
-
الگوریتم کوتاهترین مسیر 13:09
-
الگوریتم کوتاهترین مسیر - کد 12:40
-
مقدمه 08:43
-
تشخیص چرخهای 11:28
-
الگوریتم دایکسترا 09:52
-
کدنویسی الگوریتم دایکسترا 11:36
-
درخت پوشای کمینه 08:27
-
الگوریتم Prim 10:04
-
کدنویسی الگوریتم Prim 12:13
-
بازگشت 15:11
-
استک حافظه بازگشتی 10:06
-
سری فیبوناچی 11:56
-
بالا رفتن از پلهها 14:46
-
بیان ارقام 05:23
-
معکوس رشتهها 10:13
-
بررسی پالیندروم 09:25
-
زیرمجموعهها و دنبالههای فرعی رشته 13:21
-
مسئله صفحه کلید تلفن 11:56
-
جایگشت رشته 11:58
-
مرتبسازی حبابی 13:24
-
مرتبسازی انتخابی 08:08
-
مرتبسازی درجی 10:34
-
مرتبسازی ادغامی 10:03
-
مرتبسازی سریع 13:59
-
جستجوی خطی 03:46
-
جستجوی باینری 10:29
-
جستجوی باینری به صورت بازگشتی 02:31
-
جستجوی نمایی 05:11
مشخصات آموزش
ساختارهای داده و الگوریتمها با جاوا
- تاریخ به روز رسانی: 1404/09/07
- سطح دوره:مقدماتی
- تعداد درس:241
- مدت زمان :43:22:17
- حجم :17.5GB
- زبان:دوبله زبان فارسی
- دوره آموزشی:AI Academy