اپلیکیشن اندرویدی فلشکارت آموزشی از الگوریتم تا برنامه: سفری به دنیای ساختمان داده و طراحی الگوریتم با رویکرد Wirth
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره از الگوریتم تا برنامه: سفری به دنیای ساختمان داده و طراحی الگوریتم با رویکرد Wirth
موضوع کلی: مبانی علوم کامپیوتر
موضوع میانی: ساختمان دادهها و الگوریتمها
📋 سرفصلهای دوره
- 1. الگوریتم چیست؟ تعریف و مثالها
- 2. ساختمان داده چیست؟ معرفی و اهمیت
- 3. رویکرد ویرت: الگوریتم + ساختمان داده = برنامه
- 4. فرایند طراحی و پیادهسازی الگوریتمها
- 5. انواع داده انتزاعی (ADT) و کاربرد آنها
- 6. مروری بر اصول برنامهنویسی ساختاریافته
- 7. مقدمهای بر تحلیل کارایی الگوریتم
- 8. تحلیل پیچیدگی زمانی: مفهوم Big O
- 9. تحلیل پیچیدگی فضایی: مدیریت حافظه
- 10. معیارها و روشهای ارزیابی الگوریتمها
- 11. انواع داده پایه: اعداد صحیح و اعشاری
- 12. کاراکترها و رشتهها: مبانی و عملیات
- 13. انواع داده بولی و منطق گزارهها
- 14. ساختارهای کنترل جریان: توالی و ترتیب
- 15. ساختار انتخاب: دستور if-then-else
- 16. ساختار انتخاب پیشرفته: دستور case/switch
- 17. حلقههای تکرار: while و repeat-until
- 18. حلقههای تکرار: for و کاربردهای آن
- 19. طراحی الگوریتم با ترکیب ساختارهای کنترلی
- 20. مفهوم زیربرنامهها (روالها و توابع)
- 21. آرایهها: سازماندهی دادههای همنوع
- 22. دسترسی و عملیات پایه بر روی آرایهها
- 23. آرایههای چندبعدی: ماتریسها
- 24. کاربردهای آرایهها در مسائل عملی
- 25. رکوردها (Structs): تجمیع دادههای ناهمنوع
- 26. دسترسی و عملیات بر روی فیلدهای رکورد
- 27. آرایهای از رکوردها: ایجاد و مدیریت
- 28. انتخاب بین آرایه و رکورد: ملاحظات طراحی
- 29. اشارهگرها (Pointers): مفهوم و کاربرد
- 30. تخصیص حافظه پویا: دستور new/malloc
- 31. آزادسازی حافظه پویا: دستور dispose/free
- 32. اشارهگرهای dangling و مشکلات حافظه
- 33. لیستهای پیوندی: معرفی و ساختار گره
- 34. اشارهگرها و ساختار گره: پیوند دادن دادهها
- 35. ساختار لیست پیوندی یکطرفه (Singly Linked List)
- 36. ایجاد و پیمایش در لیست پیوندی
- 37. درج گره جدید در ابتدای لیست
- 38. درج گره جدید در انتهای لیست
- 39. درج گره جدید در موقعیت دلخواه
- 40. حذف گره از ابتدای لیست
- 41. حذف گره از انتهای لیست
- 42. حذف گره از موقعیت دلخواه
- 43. لیستهای پیوندی دوطرفه (Doubly Linked List)
- 44. عملیات بر روی لیستهای دوطرفه
- 45. لیستهای پیوندی دایرهای (Circular Linked List)
- 46. کاربردهای پیشرفته لیستهای پیوندی
- 47. پشته (Stack): ساختار LIFO و عملیات پایه
- 48. پیادهسازی پشته با آرایه
- 49. پیادهسازی پشته با لیست پیوندی
- 50. کاربرد پشته در ارزیابی عبارات محاسباتی
- 51. کاربرد پشته در فراخوانی توابع و بازگشت
- 52. صف (Queue): ساختار FIFO و عملیات پایه
- 53. پیادهسازی صف با آرایه
- 54. پیادهسازی صف با لیست پیوندی
- 55. صفهای دایرهای و کاربرد آنها
- 56. صف اولویت (Priority Queue): معرفی و مفهوم
- 57. مفهوم بازگشت (Recursion) و طراحی الگوریتم بازگشتی
- 58. پیادهسازی توابع بازگشتی: مثالها
- 59. تحلیل پیچیدگی الگوریتمهای بازگشتی
- 60. جستجوی خطی (Linear Search): الگوریتم و تحلیل
- 61. جستجوی دودویی (Binary Search): پیشنیازها و پیادهسازی
- 62. تحلیل کارایی جستجوی دودویی
- 63. معرفی و دستهبندی الگوریتمهای مرتبسازی
- 64. مرتبسازی انتخابی (Selection Sort) و تحلیل آن
- 65. مرتبسازی حبابی (Bubble Sort) و بهبودها
- 66. مرتبسازی درجی (Insertion Sort) برای دادههای تقریباً مرتب
- 67. مرتبسازی پوسته (Shell Sort): بهبود Insertion Sort
- 68. مرتبسازی سریع (Quick Sort): مبنا و انتخاب Pivot
- 69. پیادهسازی و تحلیل Quick Sort
- 70. مرتبسازی ادغامی (Merge Sort): تقسیم و غلبه
- 71. پیادهسازی و تحلیل Merge Sort
- 72. مرتبسازی هیپ (Heap Sort): استفاده از ساختمان داده هیپ
- 73. مرتبسازیهای غیرمقایسهای: شمارشی و مبنایی (Counting Sort, Radix Sort)
- 74. درختان: مفاهیم پایه، اصطلاحات و نمایش
- 75. درختان دودویی (Binary Trees): تعریف و خواص
- 76. پیادهسازی درخت دودویی با اشارهگرها
- 77. پیمایش درخت دودویی: In-order
- 78. پیمایش درخت دودویی: Pre-order
- 79. پیمایش درخت دودویی: Post-order
- 80. پیمایش سطح به سطح (Level-order Traversal)
- 81. درختان جستجوی دودویی (BST): معرفی و اصول کار
- 82. عملیات درج گره در BST
- 83. عملیات جستجوی گره در BST
- 84. عملیات حذف گره از BST
- 85. متعادلسازی درختان دودویی: مفهوم و نیاز
- 86. هیپ (Heap): پیادهسازی و عملیات Heapify
- 87. صف اولویت (Priority Queue) با استفاده از هیپ
- 88. درختان B (B-Trees) و B+ برای ذخیرهسازی خارجی (به رویکرد ویرت)
- 89. گرافها: تعریف، انواع و نمایش
- 90. نمایش گراف با ماتریس مجاورت (Adjacency Matrix)
- 91. نمایش گراف با لیست مجاورت (Adjacency List)
- 92. پیمایش گراف: جستجوی عمق اول (DFS)
- 93. پیمایش گراف: جستجوی سطح اول (BFS)
- 94. جداول درهمسازی (Hash Tables): مفهوم و اصول
- 95. طراحی توابع درهمسازی کارآمد
- 96. حل برخورد در جداول درهمسازی: زنجیرهسازی
- 97. حل برخورد در جداول درهمسازی: آدرسدهی باز
- 98. سازماندهی فایلها و دسترسی به دادههای خارجی (با تاکید ویرت)
این اپلیکیشن فارسی برای یادگیری و مرور محتوای آموزشی از طریق فلشکارت طراحی شده است. کارتها را یکییکی مرور کنید، پاسخ پرسشها را به یاد بیاورید و نتیجه هر پاسخ را ثبت کنید. محتوای دوره پس از نصب درون برنامه در دسترس است تا برای مطالعه روزمره معمولاً به اتصال مداوم اینترنت نیاز نداشته باشید.
محتوای آموزشی در قالبهای متنوع ارائه میشود تا هم برای یادگیری مفاهیم جدید و هم برای تثبیت آموختهها قابل استفاده باشد.
- رابط کاربری فارسی و راستچین با فونت وزیر.
- تم روشن و تیره مطابق تنظیمات سیستم.
- صفحهبندی ساده برای انتخاب دوره و شروع مرور.
- نمایش تعداد دفعات مرور هر فصل.
- انتخاب چند فصل برای مرور همزمان.
- امکان تمرکز بر فصلهایی که هنوز مرور نشدهاند.
این اپلیکیشن برای دانشآموزان، دانشجویان، داوطلبان آزمونها و علاقهمندان به یادگیری طراحی شده است؛ بهویژه کسانی که میخواهند مطالب آموزشی را در زمانهای کوتاه مرور کنند، دانستههای خود را بسنجند و مطالعه منظمتری داشته باشند.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.