الخوارزميات شيئ مهم، صدقني في كل مرة ننشر فيها مقالا عن البرمجة لا بد أن تجد أحد أصدقائنا يقدم نصيحة للعالم يُخبرهم انه و لا بد من " الخوارزميات " من أجل إكتساب المهارات البرمجية الأخرى، او بالأحرى تسهيل إكتسابها، فمن الصعب تعلم الغوص دون تعلم السباحة أولا .
و قد بدأنا في ما سبق دورة مقالية في مجال الخوارزميات، إلا ان الوقت الضيق و العمل الكثير يُرغمنا على تقديم مقال بعد طول إنتظار، و لضعف المصادر الخاصة بالخوارزميات، و أحيانا كسل المستخدم في البحث عما يناسبه ( نعتذر عن هذا بالطبع ) فقد قررنا ان نقدم لك حبيبي القارئ، مجموعة من المصادر الرائعة لتعلم و إحتراف التعامل مع الخوارزميات، بداية من فهمها و فهم الغاية منها، إلى حين كتابة او صناعة خوارزمية تُلائم مُتطلباتك او مشروعك .
و بالمصادر عزيزي القارئ نقصد كتب، كورسات، دورات، فيديوهات، مقالات، مواقع ... ، لذلك لا تتوقع فقط ان تجد فيديوهات في هذا المقال بل مصادر عديدة، إنجليزية و عربية ( للأسف لا نستطيع تقديم فقط العربية لأنها ضئيلة جدا في العالم العربي )
قبل ان نبدأ، نود ان نقدم لك بعض المصادر الأخرى لتعلم لغات او تقنيات برمجية لمواضيع سابقة كتبناها :
دائما ما قدم لنا حسين الربيعي مجموعة من الدورات على اليوتيوب الرائعة التي تستحق المشاهدة و المتابعة، و بما اننا نتحدث هنا عن دورة خوارزميات، فيجوز بالذكر انه يوجد دورة جد رائعة باللغة العربية مُقدمة من بغداد الجديدة تُغطي ذلك تماما، مُكونة تقريبا من 50 فيديو، و تم تطبيق جل الدروس على لغة البرمجة الجافا، و هي دورة إحترافية حقا .
لمشاهدة الدورة .
لازلنا نشتغل على دورتنا الخاصة بالخوارزميات على شكل مقال، و نقدم كلما سنحت لنا الفرصة درسا فيها، و يمكنك ايضا ان تتابعها عزيزي القارئ و تستفيد منها مع انها غير مكتملة، و ان تتابع جديد الدروس الجديدة فور نشرها الخاصة بالخوارزميات، في دورتنا الخاصة نقدم بخلاصة أهم ما يجب عليك معرفته في مجال الخوارزميات، و كيفية صناعة خوارزمية خاصة بك او تحرير و كتابة خوارزميات في كل مرة توضع امام معضلة برمجية من أي نوع .
لمتابعة الدورة .
كتاب رائع و ربما هو الأشهر في مجال الخوارزميات، تم تحويله الى صيغة رقمية لقرائته و توفيره للجميع، الكتاب يقدم لك مفهوم الخوارزميات و بعض الأمثلة الحية لمتى يمكن إستخدامها الى جانب بعض التمارين و الوضعيات و حلول الخوارزميات و ما الى ذلك، الكتاب رغم انه يتضمن في عنوانه عبارة Introduction اي مقدمة في هذا المجال، الا انه حقا ليس بمقدمة، يمكنك ان تحزر ذلك لأن عدد صفحات الكتاب تتجاوز 1000 صفحة، لقد تعمق صديقنا حقا في هذا المجال، و إن كنت تجيد الإنجليزية، فهذا كنز بين يديك لا يجب عليك تضييعه !
تحميل الكتاب .
دورة خوارزميات و هيكلة بيانات باللغة العربية من موقع Udemy، تتضمن الدورة 31 دورسا بمعدل 3 ساعات، ستأخذنا الدورة في طيات فهم هيكلة البيانات و كيفية تنظييمها و تسييرها لسرعة اداء اكبر للخوارزميات الخاصة بنا، و لتوفير أفضل لحماية و سهولة تعديل على الخوارزمية و ما الى ذلك، كل هذا سيتم تطبيقه بالطبع بإستخدام لغة البرمجة الجافا .
تابع الدورة .
كتاب باللغة العربية خفيف في كلامه ظريف في معلوماته، مكون مما يقارب 150 صفحة تقريبا، يتحدث الكتاب عن الخوارزميات و كيف يمكن تصميم او انشاء خوارزمية خاصة بك بناءا على موقف معين او الحاجة إن صح التعبيير و كيف يتم تحليلها أيضا، الكتاب جميل و بسيط و ننصح به أي شخص سيعرف لأول مرة مفهوم الخوارزميات و مجالات إستخدامها .
لتحميل الكتاب .
دورة جميلة أيضا باللغة العربية مُقدمة من طرف مركز التعليم الإلكتروني، عدد الفيديوهات 56 فيديو، لكن فقط النصف يتحدث عن الخوارزميات و البقية فهي مبادئ برمجية، يقدم لك الكورس مجموعة من المفاهيم في مجال الخوارزميات و كيف يمكن فهم و تحليل اي خوارزمية و كذا صناعة خوارزمية خاصك بك حسب الموقف، لا يختلف عن الكتب و الدورات سابقة النشر من حيت المفهوم و المنظور فقط من حيت طريقة الإلقاء و توصيل الأفكار .
لمشاهدة الدورة .
معهد MIT و من لا يعرفها، تقدم لنا العديد من الدروس و المواضيع في شتى المجالات التقنية على رأسها الـ Deep Learning و الـ AI و غيرها، على العموم يوجد دورة في اليوتيوب مكونة من 47 فيديو شرحي تعليمي يشرح لك مبادئ الخوارزميات و فهمها و ما الى ذلك، دورة جيدة لك إن كنت تجيد الإنجليزية بالطبع .
لمشاهدة الدورة .
بالطبع صديقي نقدم لك أفضل المصادر الملائمة لك و المناسبة للتعلم، لكن ربما قد لا تكون المصادر أعلاه كافية، كما اننا لم ننهي الـ 20 مصدر بعد، لذلك لن نقدم شرحا لكل مصدر و سنترك لك الرابط مباشرة للـ 20 مصدر المتبقي ، تفضل صديقي :
و قد بدأنا في ما سبق دورة مقالية في مجال الخوارزميات، إلا ان الوقت الضيق و العمل الكثير يُرغمنا على تقديم مقال بعد طول إنتظار، و لضعف المصادر الخاصة بالخوارزميات، و أحيانا كسل المستخدم في البحث عما يناسبه ( نعتذر عن هذا بالطبع ) فقد قررنا ان نقدم لك حبيبي القارئ، مجموعة من المصادر الرائعة لتعلم و إحتراف التعامل مع الخوارزميات، بداية من فهمها و فهم الغاية منها، إلى حين كتابة او صناعة خوارزمية تُلائم مُتطلباتك او مشروعك .
و بالمصادر عزيزي القارئ نقصد كتب، كورسات، دورات، فيديوهات، مقالات، مواقع ... ، لذلك لا تتوقع فقط ان تجد فيديوهات في هذا المقال بل مصادر عديدة، إنجليزية و عربية ( للأسف لا نستطيع تقديم فقط العربية لأنها ضئيلة جدا في العالم العربي )
قبل ان نبدأ، نود ان نقدم لك بعض المصادر الأخرى لتعلم لغات او تقنيات برمجية لمواضيع سابقة كتبناها :
- إليك 30 مصدر رائع و قوي لتعلم البرمجة بلغة البايثون
- اقوى و أفضل 30 مصدر لتصبح هاكر محترف
- اقوى و افضل 30 مصدر لتعلم البرمجة بال Vb .Net
- اقوى و افضل 30 مصدر لتعلم البرمجة بلغة الC++
1 - كتاب : البحر الشاسع لدخول الخوارزميات من بابها الواسع :
سأبدأ بهذا الكتاب لأنه و ببساطة أول كتاب قرأته عن الخوارزميات، خالد السعداني و هو مؤلف الكتاب قد أبهرنا بالعديد من كتب " البحر الشاسع " منها " البحر الشاسع لتعلم الـ C و الـ C++ " و الكثير، أيام دراستي كان لا بد لي من فهم هذه الخوارزميات اللعينة، و جلوسي مع اصدقائي في الحصة كان بمثابة طلاميس لا أفهم سافلها من أعلاها، او بالأحرى دعني أقول انني لا افهم أبدا ما معنى الخوارزمية و كيف تعمل و ما الى ذلك، الشيئ الذي دفعني للبحث عن مصادر أيضا لتعلمها، و ما إن صادفت هذا الكتاب لم أتردد في قرائته، لتصير الخوارزميات في الحصة مثل شرب الماء، مفهومة تماما، اما انا فقد كنت قادرا حينها على إبتكار و كتابة أي خوارزمية تفيد في عملية ما، إن فهم الشيئ هو المفتاح لإحترافه، و هذا الكتاب مفتاح بين يديك .
2 - كتاب : Data Structures & Algorithms :
ملاحظة هامة : في الغالب يتم تدريس او شرح الخوارزميات بمفهوم او تقنية DSA و معناها Data Structures & Algorithms لذلك سيتوجب عليك فهم كليهما من أجل إتقان تام للخوازرميات .
يُرافق الخوارزميات دائما مفهوم هيكلة البيانات او الـ Data Structures و ذلك لأن الهدف من الخوارزميات ( وهو شيئ ستعرفه لاحقا بقرائتك لاحد المصادر في هذا المقال ) هو الوصول إلى الغاية بأسرع وقت و بتقنية خفيفة، في الخوارزميات، لا يهم ان تجد الإجابة، بل المهم كيف وصلت إليها، و هل يوجد طرق أخرى أبسط و أسهل ؟ و هل الطريقة التي إستخرجتها قابلة للتنمية او لينة Flexible، اي ان اردنا ان نضيف شيئ هل يستوجب علينا صناعة الخوارزمية من اوله او فقط تطوير هذه ؟ و هل هي صالحة في كل المجالات ام لكل مجال يجب ان نصنع خوارزميته ؟ ... و ما الى ذلك من الإستفسارات، هذا الكتاب المقدم من موقع Tutorials Point سيُقدم لنا لمحة شاملة عن الخوارزميات و هيكلة البيانات .
3 - دورة : شرح مبادئ الخوارزميات باللغة العربية :
دورة بسيطة باللغة العربية من تقديم قناة CNETeam و هي دورة مكونة من 17 فيديو على منصة اليوتيوب، من خلال الدورة البسيطة التالية ستكتسب المبادئ الأولى في مجال الخوارزميات و كيفية التعامل معها و أيضا فهمها، لكن إحترافها لا يكفي من خلال القناة وحدها لأني اعتقد انها لم تتعمق كثيرا في ما يسمى بالخوارزميات، و فضلت فقط شرح الأساسيات من أجل فهم و أخذ فكرة عنها فقط .
4 - دورة الخوارزميات و هيكلة البيانات باللغة العربية من تقديم بغداد الجديدة :
لمشاهدة الدورة .
5 - دورة خوارزميات مقالية بالعربية غير مكتملة من تقديمنا :
لازلنا نشتغل على دورتنا الخاصة بالخوارزميات على شكل مقال، و نقدم كلما سنحت لنا الفرصة درسا فيها، و يمكنك ايضا ان تتابعها عزيزي القارئ و تستفيد منها مع انها غير مكتملة، و ان تتابع جديد الدروس الجديدة فور نشرها الخاصة بالخوارزميات، في دورتنا الخاصة نقدم بخلاصة أهم ما يجب عليك معرفته في مجال الخوارزميات، و كيفية صناعة خوارزمية خاصة بك او تحرير و كتابة خوارزميات في كل مرة توضع امام معضلة برمجية من أي نوع .
لمتابعة الدورة .
6 - كتاب مقدمة كبيرة في مجال الخوارزميات من تقديم Thomas Cormen بالإنجليزية :
كتاب رائع و ربما هو الأشهر في مجال الخوارزميات، تم تحويله الى صيغة رقمية لقرائته و توفيره للجميع، الكتاب يقدم لك مفهوم الخوارزميات و بعض الأمثلة الحية لمتى يمكن إستخدامها الى جانب بعض التمارين و الوضعيات و حلول الخوارزميات و ما الى ذلك، الكتاب رغم انه يتضمن في عنوانه عبارة Introduction اي مقدمة في هذا المجال، الا انه حقا ليس بمقدمة، يمكنك ان تحزر ذلك لأن عدد صفحات الكتاب تتجاوز 1000 صفحة، لقد تعمق صديقنا حقا في هذا المجال، و إن كنت تجيد الإنجليزية، فهذا كنز بين يديك لا يجب عليك تضييعه !
تحميل الكتاب .
7 - دورة تعلم الخوارزميات و هيكلة البيانات بإستخدام لغة البرمجة جافا - بالإنجليزية :
دورة خوارزميات و هيكلة بيانات باللغة العربية من موقع Udemy، تتضمن الدورة 31 دورسا بمعدل 3 ساعات، ستأخذنا الدورة في طيات فهم هيكلة البيانات و كيفية تنظييمها و تسييرها لسرعة اداء اكبر للخوارزميات الخاصة بنا، و لتوفير أفضل لحماية و سهولة تعديل على الخوارزمية و ما الى ذلك، كل هذا سيتم تطبيقه بالطبع بإستخدام لغة البرمجة الجافا .
تابع الدورة .
8 - كتاب تحليل و تصميم الخوارزميات باللغة العربية :
كتاب باللغة العربية خفيف في كلامه ظريف في معلوماته، مكون مما يقارب 150 صفحة تقريبا، يتحدث الكتاب عن الخوارزميات و كيف يمكن تصميم او انشاء خوارزمية خاصة بك بناءا على موقف معين او الحاجة إن صح التعبيير و كيف يتم تحليلها أيضا، الكتاب جميل و بسيط و ننصح به أي شخص سيعرف لأول مرة مفهوم الخوارزميات و مجالات إستخدامها .
لتحميل الكتاب .
9 - دورة مساق الخوارزميات و مبادئ البرمجة بالفيديو و بالعربية :
لمشاهدة الدورة .
10 - كورس كامل في الخوارزميات بالإنجليزية مُقدم من معهد ماساشوستش التكنولوجي MIT :
معهد MIT و من لا يعرفها، تقدم لنا العديد من الدروس و المواضيع في شتى المجالات التقنية على رأسها الـ Deep Learning و الـ AI و غيرها، على العموم يوجد دورة في اليوتيوب مكونة من 47 فيديو شرحي تعليمي يشرح لك مبادئ الخوارزميات و فهمها و ما الى ذلك، دورة جيدة لك إن كنت تجيد الإنجليزية بالطبع .
لمشاهدة الدورة .
باقي المصادر :
بالطبع صديقي نقدم لك أفضل المصادر الملائمة لك و المناسبة للتعلم، لكن ربما قد لا تكون المصادر أعلاه كافية، كما اننا لم ننهي الـ 20 مصدر بعد، لذلك لن نقدم شرحا لكل مصدر و سنترك لك الرابط مباشرة للـ 20 مصدر المتبقي ، تفضل صديقي :
- - كتاب Algorithms للكتاب Robert Sedgwick بالإنجليزية
- كتاب " خوارزميون " للمبرمج عبد الله عيد .. الكتاب باللغة العربية لكن مدفوع
- كورس فيديو بالإنجليزية لجامعة Princeton لتعلم الخوارزميات و هيكلة البيانات
- كتاب " الخوارزميات " كتاب باللغة العربية في مجال الخوارزميات .
- خوارزميات بالعربي ... دورة بالعربية على اليوتيوب لتعلم و إتقان الخوارزميات .
- فيديو " مدخل الى الخوارزميات " فيديو واحد من نصف ساعة لفهم دور الخوارزميات و لما يجب تعلمها .
- كورس مفهوم الخوارزميات و الـ Data Structures بإستخدام الجافا للمبتدئين بالإنجليزية
- كتاب " Algorithm in Nutshell "من تقديم O'REILLY كتاب جد إحترافي .
- مجموعة مقالات بالعربية في مجال الخوارزميات لتعلمها من الصفر من موقع Harmash .
- كتاب " Algorithm Design " بالإنجليزية لتعلم تصميم الخوارزميات بطريقة إحترافية .