اپلیکیشن اندرویدی فلشکارت آموزشی ساختمان داده ها و الگوریتم ها: آموزش تخصصی و پیشرفته
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره ساختمان داده ها و الگوریتم ها: آموزش تخصصی و پیشرفته
موضوع کلی: برنامه نویسی
موضوع میانی: الگوریتمها و ساختمان دادهها
📋 سرفصلهای دوره
- 1. مقدمهای بر الگوریتمها و ساختمان دادهها
- 2. آشنایی با پیچیدگی زمانی و مکانی
- 3. Big O Notation و تحلیل الگوریتمها
- 4. انواع دادههای اولیه (Primitive Data Types)
- 5. آرایهها (Arrays): تعریف، پیادهسازی، عملیات
- 6. آرایههای پویا (Dynamic Arrays)
- 7. لیستهای پیوندی (Linked Lists): تک پیوندی، دو پیوندی، حلقوی
- 8. پیادهسازی لیستهای پیوندی با C++
- 9. پشته (Stack): پیادهسازی با آرایه و لیست پیوندی
- 10. صف (Queue): پیادهسازی با آرایه و لیست پیوندی
- 11. Deque (صف دو طرفه)
- 12. پیادهسازی Deque با آرایه و لیست پیوندی
- 13. درختها (Trees): تعاریف و اصطلاحات پایه
- 14. درخت دودویی (Binary Tree)
- 15. درخت جستجوی دودویی (Binary Search Tree)
- 16. عملیات جستجو، درج و حذف در BST
- 17. درختهای متوازن (Balanced Trees): AVL Tree
- 18. پیادهسازی AVL Tree
- 19. Rotation ها در AVL Tree
- 20. درخت قرمز-سیاه (Red-Black Tree)
- 21. پیادهسازی Red-Black Tree
- 22. Heap (Heap) و صف اولویت (Priority Queue)
- 23. درخت Heap دودویی (Binary Heap)
- 24. الگوریتم Heapsort
- 25. گرافها (Graphs): تعاریف و اصطلاحات پایه
- 26. انواع گراف: جهتدار، بدون جهت، وزندار
- 27. روشهای نمایش گراف: ماتریس مجاورت، لیست مجاورت
- 28. جستجوی عمقی اول (DFS)
- 29. جستجوی سطحی اول (BFS)
- 30. یافتن کوتاهترین مسیر با BFS
- 31. الگوریتم Dijkstra برای یافتن کوتاهترین مسیر در گراف وزندار
- 32. الگوریتم Bellman-Ford برای یافتن کوتاهترین مسیر در گراف وزندار با یالهای منفی
- 33. الگوریتم Floyd-Warshall برای یافتن کوتاهترین مسیر بین تمام جفت راسها
- 34. درخت پوشای کمینه (Minimum Spanning Tree): Kruskal's Algorithm
- 35. درخت پوشای کمینه (Minimum Spanning Tree): Prim's Algorithm
- 36. مرتبسازی (Sorting): Bubble Sort
- 37. مرتبسازی (Sorting): Insertion Sort
- 38. مرتبسازی (Sorting): Selection Sort
- 39. مرتبسازی (Sorting): Merge Sort
- 40. مرتبسازی (Sorting): Quick Sort
- 41. مرتبسازی (Sorting): Heap Sort
- 42. مرتبسازی (Sorting): Radix Sort
- 43. مرتبسازی (Sorting): Bucket Sort
- 44. جستجو (Searching): Linear Search
- 45. جستجو (Searching): Binary Search
- 46. Hashing: جداول Hash (Hash Tables)
- 47. توابع Hash (Hash Functions)
- 48. حل تصادم (Collision Resolution): زنجیرهسازی جداگانه (Separate Chaining)
- 49. حل تصادم (Collision Resolution): آدرسدهی باز (Open Addressing)
- 50. الگوریتمهای تقسیم و حل (Divide and Conquer)
- 51. برنامهنویسی پویا (Dynamic Programming): مفهوم و کاربردها
- 52. مسائل بهینهسازی با برنامهنویسی پویا
- 53. Greedy Algorithms (الگوریتمهای حریصانه)
- 54. Backtracking (عقبگرد)
- 55. Branch and Bound (انشعاب و تحدید)
- 56. الگوریتمهای رشته (String Algorithms): جستجوی الگو (Pattern Searching)
- 57. الگوریتم Knuth-Morris-Pratt (KMP)
- 58. الگوریتم Boyer-Moore
- 59. الگوریتم Rabin-Karp
- 60. فشردهسازی دادهها (Data Compression): Huffman Coding
- 61. فشردهسازی دادهها (Data Compression): Lempel-Ziv (LZ77/LZ78)
- 62. درخت Trie
- 63. Suffix Tree
- 64. Suffix Array
- 65. Bloom Filter
- 66. Union Find (Disjoint Set) Data Structure
- 67. الگوریتمهای هندسی (Geometric Algorithms): یافتن Convex Hull
- 68. الگوریتمهای هندسی (Geometric Algorithms): تقاطع خطوط
- 69. الگوریتمهای تقریبی (Approximation Algorithms)
- 70. الگوریتمهای تصادفی (Randomized Algorithms)
- 71. Data Structures for Graph Algorithms (دادهساختارهای مورد استفاده در الگوریتمهای گراف)
- 72. Advanced Graph Algorithms (الگوریتمهای پیشرفته گراف)
- 73. Advanced Tree Data Structures (دادهساختارهای پیشرفته درخت)
- 74. External Sorting (مرتبسازی خارجی)
- 75. Cache-Oblivious Algorithms
- 76. Parallel Algorithms (الگوریتمهای موازی)
- 77. Amortized Analysis (تحلیل استهلاکی)
- 78. Lower Bounds for Sorting (کران پایین برای مرتبسازی)
- 79. Lower Bounds for Searching (کران پایین برای جستجو)
- 80. Computational Geometry (هندسه محاسباتی)
- 81. String Matching with Finite Automata (تطبیق رشته با اتوماتای متناهی)
- 82. Succinct Data Structures (دادهساختارهای فشرده)
- 83. Range Queries (پرس و جوی بازهای)
- 84. Segment Tree
- 85. Fenwick Tree (Binary Indexed Tree)
- 86. B-Tree
- 87. Skip List
- 88. k-d Tree
- 89. Quadtree
- 90. Spatial Data Structures (ساختمان دادههای مکانی)
- 91. Distributed Hash Table (DHT)
- 92. Data Structures for Machine Learning (دادهساختارهای مورد استفاده در یادگیری ماشین)
- 93. Applications of Data Structures and Algorithms (کاربردهای ساختمان داده و الگوریتمها)
- 94. Designing Efficient Data Structures (طراحی ساختمان دادههای کارآمد)
- 95. Real-World Data Structures and Algorithms (ساختمان دادهها و الگوریتمهای دنیای واقعی)
- 96. Advanced Dynamic Programming Techniques (تکنیکهای پیشرفته برنامهنویسی پویا)
- 97. Approximation Algorithms for NP-Hard Problems (الگوریتمهای تقریبی برای مسائل NP-Hard)
- 98. Randomized Data Structures (دادهساختارهای تصادفی)
- 99. Persistent Data Structures (دادهساختارهای ماندگار)
- 100. Geometric Range Searching (جستجوی بازه هندسی)
این اپلیکیشن فارسی برای یادگیری و مرور محتوای آموزشی از طریق فلشکارت طراحی شده است. کارتها را یکییکی مرور کنید، پاسخ پرسشها را به یاد بیاورید و نتیجه هر پاسخ را ثبت کنید. محتوای دوره پس از نصب درون برنامه در دسترس است تا برای مطالعه روزمره معمولاً به اتصال مداوم اینترنت نیاز نداشته باشید.
محتوای آموزشی در قالبهای متنوع ارائه میشود تا هم برای یادگیری مفاهیم جدید و هم برای تثبیت آموختهها قابل استفاده باشد.
- رابط کاربری فارسی و راستچین با فونت وزیر.
- تم روشن و تیره مطابق تنظیمات سیستم.
- صفحهبندی ساده برای انتخاب دوره و شروع مرور.
- نمایش تعداد دفعات مرور هر فصل.
- انتخاب چند فصل برای مرور همزمان.
- امکان تمرکز بر فصلهایی که هنوز مرور نشدهاند.
این اپلیکیشن برای دانشآموزان، دانشجویان، داوطلبان آزمونها و علاقهمندان به یادگیری طراحی شده است؛ بهویژه کسانی که میخواهند مطالب آموزشی را در زمانهای کوتاه مرور کنند، دانستههای خود را بسنجند و مطالعه منظمتری داشته باشند.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.