کتاب ساختمان داده ها و الگوریتم ها: با این کتاب، یک قدم از بقیه جلوتر باشید! با فرمت AZW3 برای کتابخوان کیندل و فرمت EPUB
ساختمان داده ها و الگوریتم ها: با این دوره، یک قدم از بقیه جلوتر باشید! ساختمان داده ها و الگوریتم ها: با این دوره، یک قدم از بقیه جلوتر باشید! آیا به دنبال ارتقای سطح مهارتهای برنامهنویسی خود هستید...
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره ساختمان داده ها و الگوریتم ها: با این دوره، یک قدم از بقیه جلوتر باشید!
موضوع کلی: برنامه نویسی
موضوع میانی: الگوریتمها و ساختمان دادهها
📋 سرفصلهای دوره
- 1. چرا الگوریتم و ساختمان داده یاد بگیریم؟
- 2. الگوریتم چیست؟ ویژگیها و تحلیل درستی
- 3. تحلیل پیچیدگی زمانی و فضایی (Complexity Analysis)
- 4. نمادگذاری Big O: تحلیل کران بالا
- 5. نمادگذاریهای Big Omega (Ω) و Big Theta (Θ)
- 6. تحلیل بهترین، بدترین و متوسط حالت (Best, Worst, Average Case)
- 7. قوانین محاسبه پیچیدگی زمانی در کد
- 8. بازگشت (Recursion): مفهوم و کاربرد
- 9. تحلیل الگوریتمهای بازگشتی
- 10. قضیه اصلی (Master Theorem) برای تحلیل بازگشتیها
- 11. مفاهیم ریاضی ضروری: لگاریتم، سریها و احتمالات
- 12. آمادهسازی محیط برنامهنویسی برای دوره
- 13. مقدمهای بر ساختمان دادهها (Data Structures)
- 14. آرایهها (Arrays): مفاهیم پایه و عملیات
- 15. آرایههای پویا (Dynamic Arrays)
- 16. لیستهای پیوندی (Linked Lists): مقدمه
- 17. لیست پیوندی یکطرفه (Singly Linked List)
- 18. لیست پیوندی دوطرفه (Doubly Linked List)
- 19. لیست پیوندی دایرهای (Circular Linked List)
- 20. پشته (Stack): مفهوم و کاربردها
- 21. پیادهسازی پشته با آرایه
- 22. پیادهسازی پشته با لیست پیوندی
- 23. صف (Queue): مفهوم و کاربردها
- 24. پیادهسازی صف با آرایه
- 25. صف دایرهای (Circular Queue)
- 26. پیادهسازی صف با لیست پیوندی
- 27. دک (Deque - Double-ended Queue)
- 28. مقایسه آرایه و لیست پیوندی: کی و کجا استفاده کنیم؟
- 29. مقدمهای بر درختها: اصطلاحات و مفاهیم
- 30. درخت دودویی (Binary Tree)
- 31. پیمایش درختها: Pre-order, In-order, Post-order
- 32. پیمایش سطح به سطح (Level Order Traversal)
- 33. درخت جستجوی دودویی (Binary Search Tree - BST)
- 34. عملیات جستجو و درج در BST
- 35. عملیات حذف در BST
- 36. تحلیل پیچیدگی عملیات در BST
- 37. درختهای متوازن (Balanced Trees): چرا به آنها نیاز داریم؟
- 38. درخت AVL: مفهوم و چرخشها (Rotations)
- 39. درج و متوازنسازی در درخت AVL
- 40. درخت قرمز-سیاه (Red-Black Tree): مفاهیم و قوانین
- 41. هرم (Heap): مفهوم Min-Heap و Max-Heap
- 42. پیادهسازی هرم با آرایه
- 43. عملیات درج و حذف در هرم (Heapify)
- 44. مرتبسازی هرمی (Heap Sort)
- 45. صف اولویت (Priority Queue) و پیادهسازی آن با هرم
- 46. درخت پیشوندی یا ترای (Trie - Prefix Tree)
- 47. عملیات درج و جستجو در ترای
- 48. درخت B (B-Tree): ساختار و کاربرد در پایگاه داده
- 49. درهمسازی (Hashing): مفاهیم پایه
- 50. توابع درهمسازی (Hash Functions)
- 51. مدیریت برخورد (Collision Handling): زنجیرهسازی (Chaining)
- 52. مدیریت برخورد: آدرسدهی باز (Open Addressing)
- 53. پیادهسازی و تحلیل Hash Table
- 54. مقدمهای بر الگوریتمهای مرتبسازی
- 55. مرتبسازی حبابی (Bubble Sort)
- 56. مرتبسازی انتخابی (Selection Sort)
- 57. مرتبسازی درجی (Insertion Sort)
- 58. مرتبسازی ادغامی (Merge Sort)
- 59. مرتبسازی سریع (Quick Sort)
- 60. انتخاب عنصر محوری (Pivot) در Quick Sort
- 61. مرتبسازی شمارشی (Counting Sort)
- 62. مرتبسازی مبنایی (Radix Sort)
- 63. مقایسه جامع الگوریتمهای مرتبسازی
- 64. جستجوی خطی (Linear Search)
- 65. جستجوی دودویی (Binary Search): پیادهسازی بازگشتی و تکراری
- 66. جستجوی درونیابی (Interpolation Search)
- 67. جستجوی سهتایی (Ternary Search)
- 68. روش تقسیم و حل (Divide and Conquer)
- 69. کاربرد تقسیم و حل: پیدا کردن نزدیکترین زوج نقاط
- 70. الگوریتمهای حریصانه (Greedy Algorithms)
- 71. مسئله انتخاب فعالیت (Activity Selection Problem)
- 72. کدگذاری هافمن (Huffman Coding)
- 73. مسئله کولهپشتی کسری (Fractional Knapsack)
- 74. برنامهنویسی پویا (Dynamic Programming - DP): مفاهیم اصلی
- 75. تفاوت DP و تقسیم و حل: زیرمسائل همپوشان
- 76. روش بهینهسازی با حافظه (Memoization)
- 77. روش جدولبندی (Tabulation)
- 78. مثال DP: محاسبه دنباله فیبوناچی
- 79. مسئله کولهپشتی صفر و یک (0/1 Knapsack)
- 80. طولانیترین زیررشته مشترک (Longest Common Subsequence - LCS)
- 81. فاصله ویرایش (Edit Distance)
- 82. روش عقبگرد (Backtracking): مفهوم و کاربرد
- 83. مثال Backtracking: مسئله هشت وزیر (N-Queens Problem)
- 84. مقدمهای بر گرافها: اصطلاحات و انواع
- 85. نمایش گراف: ماتریس مجاورت و لیست مجاورت
- 86. پیمایش گراف: جستجوی اول سطح (Breadth-First Search - BFS)
- 87. کاربردهای BFS: یافتن کوتاهترین مسیر در گراف بیوزن
- 88. پیمایش گراف: جستجوی اول عمق (Depth-First Search - DFS)
- 89. کاربردهای DFS: تشخیص دور و همبندی
- 90. مرتبسازی توپولوژیک (Topological Sort)
- 91. کوتاهترین مسیر: الگوریتم دایکسترا (Dijkstra's Algorithm)
- 92. کوتاهترین مسیر با وزن منفی: الگوریتم بلمن-فورد (Bellman-Ford)
- 93. کوتاهترین مسیر بین همه زوجها: الگوریتم فلوید-وارشال (Floyd-Warshall)
- 94. درخت پوشای کمینه (Minimum Spanning Tree - MST)
- 95. الگوریتم پریم (Prim's Algorithm) برای MST
- 96. الگوریتم کراسکال (Kruskal's Algorithm) برای MST
- 97. مولفههای قویا همبند (Strongly Connected Components)
- 98. ساختار داده مجموعههای مجزا (Disjoint Set Union - DSU)
- 99. الگوریتمهای پردازش رشته: KMP
- 100. دستکاری بیت (Bit Manipulation)
تگها:
Algorithms
Computer Science
Data Structures
Programming
آموزش الگوریتم
آموزش ساختمان داده
الگوریتم
برنامه نویسی
دوره آموزشی
ساختمان داده
علوم کامپیوتر
کدنویسی
مباحث پیشرفته برنامه نویسی
مهارت برنامه نویسی
یادگیری برنامه نویسی
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.