في هذا #الثريد إن شاء الله سأطرح لكم قائمة بالخوارزميات الشائعة، أنواعها، وأشهرها والتي ينبغي علينا تعلمها كمبرمجين (بعضها قد تكون لمتوسطي المستوى فما فوق) 👍🏻.
#برمجة #برمجيات #مبرمج #مبرمجون #خوارزميات #تحدي #تحديات #الخوارزميات
#برمجة #برمجيات #مبرمج #مبرمجون #خوارزميات #تحدي #تحديات #الخوارزميات
قبل أن نبدأ يجب أن نعرف، ما هي الخوارزميات؟
ببساطة هي مجموعة من الإجراءات والخطوات المتسلسلة والتي تُنفَذ بصورة منطقية (وقد تكون رياضية كذلك) لحل مشكلة ما.
ببساطة هي مجموعة من الإجراءات والخطوات المتسلسلة والتي تُنفَذ بصورة منطقية (وقد تكون رياضية كذلك) لحل مشكلة ما.
ولمن لم يفهم، لا بأس بذلك ولكن انصحك بمتابعة هذه القناة ومن ثم مشاهدة محتويات قائمة التشغيل التالية بالترتيب (ممتازة جداً): -
youtube.com
youtube.com
إذاً في هذا #الثريد بإذن الله سأوضح لكم 👇🏼
• أنواع هذه الخوارزميات وسأُعرفها من ناحية وظيفتها.
• الخوارزميات المشهورة التي تندرج تحت كل نوع.
بسم الله نبدأ.
• أنواع هذه الخوارزميات وسأُعرفها من ناحية وظيفتها.
• الخوارزميات المشهورة التي تندرج تحت كل نوع.
بسم الله نبدأ.
أولاً: خوارزميات البحث (Searching Agorithms)
تستخدم لإيجاد البيانات المطلوبة في هياكل البيانات (مكان تخزين البيانات)، مع إمكانية عدم وجود هذا العنصر من البيانات.
تستخدم لإيجاد البيانات المطلوبة في هياكل البيانات (مكان تخزين البيانات)، مع إمكانية عدم وجود هذا العنصر من البيانات.
أشهر خوارزميات البحث: -
⁃ Linear Search.
⁃ Binary Search.
⁃ Depth First Search (DFS).
⁃ Breadth First Search (DFS).
⁃ Jump Search (DFS).
⁃ Linear Search.
⁃ Binary Search.
⁃ Depth First Search (DFS).
⁃ Breadth First Search (DFS).
⁃ Jump Search (DFS).
ثانياً: خوارزميات الترتيب (Sorting Algorithms)
تستخدم لإعادة ترتيب عناصر مصفوفة أو قائمة من العناصر وفقاً لنوع الترتيب (تصاعدي أو تنازلي).
تستخدم لإعادة ترتيب عناصر مصفوفة أو قائمة من العناصر وفقاً لنوع الترتيب (تصاعدي أو تنازلي).
أشهر خوارزميات الترتيب: -
⁃ Quick Sort.
⁃ Insertion Sort.
⁃ Selection Sort.
⁃ Bubble Sort.
⁃ Tim Sort.
⁃ Heap Sort.
⁃ Radix Sort.
⁃ Bucket Sort.
⁃ Counting Sort.
⁃ Merge Sort.
⁃ Quick Sort.
⁃ Insertion Sort.
⁃ Selection Sort.
⁃ Bubble Sort.
⁃ Tim Sort.
⁃ Heap Sort.
⁃ Radix Sort.
⁃ Bucket Sort.
⁃ Counting Sort.
⁃ Merge Sort.
ثالثا: الخوارزميات العودية (Recursive Algorithms)
خوارزمية تستدعي نفسها بقيم إدخال أصغر أو أبسط، والنتيجة للمدخلات الحالية نحصل عليها من خلال تطبيق عمليات بسيطة على القيمة الراجعة للمدخلات الأصغر أو الأبسط.
خوارزمية تستدعي نفسها بقيم إدخال أصغر أو أبسط، والنتيجة للمدخلات الحالية نحصل عليها من خلال تطبيق عمليات بسيطة على القيمة الراجعة للمدخلات الأصغر أو الأبسط.
أشهر خوارزميات العودية: -
⁃ Factorial.
⁃ Exponential.
⁃ Tower of Hanoi.
⁃ Tree Traversals.
⁃ DFS of Graph.
⁃ Factorial.
⁃ Exponential.
⁃ Tower of Hanoi.
⁃ Tree Traversals.
⁃ DFS of Graph.
رابعاً: البرمجة الديناميكية (Dynamic Programming)
تكنيك خوارزمي (رياضي) وبرمجي يستخدم لتحسين الطرق العودية (Recursion)، يعد هذا التحسين مقلل للتعقيد الزمني ويقوم بتقسيم المشكلة إلى مشاكل فرعية أبسط ويخرن نتائج المشكلة الفرعية لإعادة حسابها في مشكلة أخرى لاحقاً.
تكنيك خوارزمي (رياضي) وبرمجي يستخدم لتحسين الطرق العودية (Recursion)، يعد هذا التحسين مقلل للتعقيد الزمني ويقوم بتقسيم المشكلة إلى مشاكل فرعية أبسط ويخرن نتائج المشكلة الفرعية لإعادة حسابها في مشكلة أخرى لاحقاً.
أشهر خوارزميات البرمجة الديناميكية: -
⁃ Fibonaci Number Series.
⁃ Knapsack Problem.
⁃ Tower of Hanoi.
⁃ Shortest Path by Dijkstra.
⁃ Matrix Chain Multiplication.
⁃ Fibonaci Number Series.
⁃ Knapsack Problem.
⁃ Tower of Hanoi.
⁃ Shortest Path by Dijkstra.
⁃ Matrix Chain Multiplication.
خامساً: الخوارزميات الأنانية (Greedy Algorithms)
نموذج خوارزمي يبني الحل خطوة بخطوة، دائماً يتم اختيار الخطوة التالية التي توفر منفعة فورية و واضحة.
وما أعتقد ان لها ترجمة افضل من كذا 😅.
نموذج خوارزمي يبني الحل خطوة بخطوة، دائماً يتم اختيار الخطوة التالية التي توفر منفعة فورية و واضحة.
وما أعتقد ان لها ترجمة افضل من كذا 😅.
أشهر الخوارزميات الأنانية: -
⁃ Huffman Coding.
⁃ Fractional Knapsack Problem.
⁃ Activity Selection.
⁃ Job Sequencing Problem.
⁃ Huffman Coding.
⁃ Fractional Knapsack Problem.
⁃ Activity Selection.
⁃ Job Sequencing Problem.
جاري تحميل الاقتراحات...