13

متى يجب تعلم الخوارزميات ؟

السلام عليكم , كنت اتسائل متى يجب تعلم الخوارزميات و ماهي فائدة تعلمها ؟ و هل يجب تعلمها قبل البدا في تعلم اي لغة برمجة ؟

و ماهي المتطلبات لتعلمها ؟ و اذا امكن مصدر للتعلم و يكون عربي

يرجى الدخول لحسابك أو تسجيل حساب لتستطيع إضافة تعليق
حساب جديد دخول

التعليقات

13

معظم الجامعات تبدا بتعليم الخوارزميات قبل تعليم البرمجة

لان الخوارزميات هي سلسلة من الخطوات لحل مشكلة

وهذا ايضا ما تقوم بفعله عند البرمجة ، تكتب سلسلة من الخطوات يتبعها الحاسوب لحل مشكلة

ماهي فائدة تعلمها ؟

مقدمة للبرمجة

هل يجب تعلمها قبل البدا في تعلم اي لغة برمجة ؟

ليست بالضرورة ، انا لم اتعلمها لكن اعرف اساسيات البرمجة ، لكن يفضل تعلمها

ماهي المتطلبات لتعلمها ؟

اعتقد فقط رياضيات

و اذا امكن مصدر للتعلم و يكون عربي

قائمة تشغيل من يوتيوب تتضمن شرح الخوارزميات ثم تعلم اساسيات البرمجة بجافا

اتمنى لك التوفيق

اجابك الاخ البوسطة كما يجب

بالنسبة لفائدتها:

تخيل معي انك تريد فتح نافذة

عليك ان تعرف الطريقة 1.ابحث عن المقبض 2.ادر المقبض 3.اسحب المقبض

نفس الشي للخوارزميات

هناك عدة خوارزميات لم اتعلم منها سوى واحدة خخخخخخخخ وهي خوارزمية البحث و الترتيب

الخوارزميات هي الأساس

في رأيي تعلمها يجعل الشخص يفهم كيف تعمل لغات البرمجة

إدا كان هدفك هو لغة برمجة واحدة فقط فيمكنك دراسة أساسيات الخوارزميات فقط لكن ادا كنت تريد ان تصبح مطور محترف في العديد من اللغات فيجب عليك تعلمها حتى مستوى المتقدم و هدا حتى لا تجد مشكلة في عدم فهم شيء ما في لغة برمجة ما

بالإضافة تعلمها لن يأخد وقت كثير :)

صعوبة البرمجة ليست في الخوارزميات، نادر أن تحتاج لكتابة خوارزمية معقدة إلا في أجزاء صغيرة في البرنامج، الصعوبة في تنظيم البرنامج وهندسته قبل أن يتحول لفوضى.

في الجامعات غالباً ماتقسم مواضيع الخوارزميات لمادتين: 1-أساسيات الخوارزميات، وتدرس فيها مقدمة لتحليل الخوارزميات ثم قائمة من خوارزميات البحث والترتيب. 2- تراكيب البيانات وتدرس بها المصفوفات والقوائم المتصلة والمكدس والكومة ثم أشجار البيانات.

الجزء الثاني مهم وغالباً ستحتاجه كثيراً، لكن الجزء الأول ليست بتلك الأهمية الكبيرة فهو لايعلمك كيف تكتب خوارزمية (هذه تعلمك إياها الممارسة والخبرة)، بل مجرد سرد لخوارزميات موجودة، أهم الأشياء به مواضيع تحليل الخوارزمية، معرفة الأشياء النظرية مثل معنى تعقيد الخوارزمية، كـbig-O، ومعنى الحالة الأفضل والأسواء والمتوسط، وخوارزميات البحث الخطي liner والثنائي binary. البحث والترتيب لايهم كثيراً، لأن كثير من لغات البرمجة توفر وظائف ودوال للترتيب عامة الغرض وغالباً تستخدم خوارزميات سريعة للترتيب مثل quicksort أو خوارزميات هجين مثل introsort واستخدمت فيها طرق تحسين مناسبة للغة، خذ نظرة سريعة عليها، ومتى ما احتجتها، يمكنك العودة لها.

هناك موضوع تهمله كتب ومناهج الخوارزميات وتراكيب البيانات وهو طريقة عمل الذاكرة وأنواعها مثل الـsram و dram والتخزين المؤقت في المعالج cpu cache، فهمه سيوضح لك لماذا بعض الخوارزميات وتراكيب البيانات ممتازة نظرياً لكن عند التطبيق تجد أداءها سيئ.

شكرا على ردك اخي هل هذه الدورة فيها الجزء الثاني الذي تتحدث عنه او الاول فقط

اذا لم تكن كذلك هل يمكن ان تفيدني بدورة لتعلم الجزء الثاني

لا هذه ليست منهج خورازميات، هذه دورة لمبتدئين البرمجة والذين لم يسبق لهم البرمجة، ما أتحدث عنه بعد هذه المرحلة.

شكرا جزيلا , انا راح ابدا بتعلمها نظرا لفائدتها :)

هل اتابع هذه الدورة

ام هذه

المهم ان تبدا بالتعلم وحسب مستواك هذا بالنسبه لسؤالك اى الدورتين ابدا

ابدا باحداهما وانتهى منها ثم تصفح موضوعات الدوره بعد ان تكونت لك المعرفه لتحكم على محتواها وهل هى ستفيديك او تضيف لك او انك معلومات سبقى لك وعرفتها