JavaRush /مدونة جافا /Random-AR /مراجعة كتاب: "هياكل بيانات جافا وخوارزمياتها"، روبرت لافو...

مراجعة كتاب: "هياكل بيانات جافا وخوارزمياتها"، روبرت لافوريت

نشرت في المجموعة
قوة كل مبرمج في معرفته. نعم، إن القدرة على البحث جيدًا في Google ليست أيضًا في المركز الأخير، ولكن مع ذلك، يجب أن يكون هناك قدر معين من المعرفة، والتي على أساسها يتم تشكيل طريقة تفكير المطور. كلما كانت هذه المعرفة أعمق، كلما أصبحت الحلول الأكثر إثارة للاهتمام التي يمكن للمبرمج أن يتوصل إليها. مراجعة كتاب: "هياكل بيانات جافا وخوارزمياتها"، روبرت لافوريت - 1أحد أجزاء هذه "القاعدة" هو هياكل البيانات والخوارزميات. كيف يمكنك توسيع معرفتك في هذا الاتجاه؟ كخيار، ابحث عن كتاب، حيث ستصبح المعرفة احتياطيًا مقاومًا للحريق وأساسًا لمزيد من الدراسة. بالنسبة لي، كان هذا الكتاب هو "هياكل وخوارزميات بيانات جافا" لروبرت لافوريت .مراجعة كتاب: "هياكل بيانات جافا وخوارزمياتها"، روبرت لافوريت - 2

لمن

يمكن أن يكون جمهور هذا الكتاب مجموعة واسعة جدًا من الأشخاص، لأنه سيكون مفيدًا لكل من أولئك الذين أتقنوا للتو بناء جملة لغة جافا ، والمبرمجين الممارسين، لفهم أعمق لميزات هياكل البيانات والخوارزميات .

عن ما

هذا الكتاب مخصص لدراسة واستخدام هياكل البيانات والخوارزميات في البرمجة. وسوف يعلم القارئ كيف تحدد هياكل البيانات طريقة تنظيم البيانات في الذاكرة، وكيف تقوم الخوارزميات بتنفيذ عمليات مختلفة على هذه الهياكل. دعونا نتعمق قليلاً ونرى ما يدور حوله هذا الكتاب بالضبط:
  1. المصفوفات. يتم تناول عمليات الإدراج والبحث والحذف في المصفوفات والمصفوفات المرتبة بالتفصيل. يوضح عملية البحث الخطي والثنائي للمصفوفات المرتبة وغير المرتبة. سوف تتعلم أيضًا ما هو بناء جملة O.
  2. فرز. تم أخذ ثلاث طرق فرز بسيطة بعين الاعتبار: "الفرز الفقاعي"، "الفرز بالاختيار"، "الفرز بالإدراج". ستتعلم من الكتاب أيهما أبطأ وأيهما أبسط.
  3. الأكوام وطوابير الانتظار. يتم أخذ هياكل البيانات مثل المكدس وقائمة الانتظار وقائمة الانتظار ذات الأولوية وفعاليتها وتنفيذها في Java بعين الاعتبار.
  4. القوائم المرتبطة. يتحدث الكتاب عن القوائم المرتبطة المزدوجة والثنائية الاتجاه، وكفاءتها، وكيفية إجراء عمليات الإدراج والبحث والحذف. يتم أيضًا تناول التكرارات والطرق التي تتطلبها.
  5. العودية. يتم أخذ التكرارات في الاعتبار في مواقف مختلفة، مثل: حساب الأعداد المثلثية والمضروبات، وإنشاء الجناس الناقصة، وإجراء بحث ثنائي عودي، وحل لغز برج هانوي، وتنفيذ الفرز بالدمج، وحل مشكلة الحقيبة.
  6. فرز غير تافهة. يتم أخذ الطرق الأكثر تقدمًا بعين الاعتبار: فرز الصدفة، والفرز السريع، والفرز الجذري، وخوارزمياتها، وكفاءتها.
  7. الأشجار الثنائية. يتم النظر في أشجار البحث الثنائية المتوازنة، وكيفية عملها، وعمليات الإدراج والحذف، وأنواع الاجتياز المختلفة، والبحث عن الحد الأدنى والحد الأقصى، والبحث عن خليفة. سيتم أيضًا تغطية قانون هوفمان.
  8. الأشجار الحمراء والسوداء. نحن نعتبر أحد أكثر أنواع الأشجار المتوازنة فعالية، وعمليات تدويرها وتبديل الألوان اللازمة لتحقيق التوازن.
  9. الأشجار 2-3-4. تم وصف الأشجار من هذا النوع كمثال على الأشجار متعددة المسارات، وتمت مناقشة عملها وعلاقتها مع الأشجار B، والتي تستخدم لتخزين البيانات الخارجية.
  10. جداول التجزئة. ويتم تناول التجزئة وطرقها المختلفة، مثل الفحص الخطي والتربيعي، والتجزئة المزدوجة، وطريقة التسلسل. يمكنك أيضًا التعرف على كيفية استخدام التجزئة لتنظيم تخزين الملفات الخارجية.
  11. الأهرامات. هذا نوع خاص من الأشجار يُستخدم لتنفيذ قوائم الانتظار ذات الأولوية بكفاءة. ويناقش الكتاب آليات عمل الإدراج والحذف وإعادة الترتيب. سوف تتعلم أيضًا ما هو التقليب الهرمي وكيف يمكن تنفيذه في Java.
  12. الرسوم البيانية. يتم عرض الرسوم البيانية الموزونة وغير الموزونة، وخوارزميات البحث من خلالها، والخوارزميات المستخدمة للعثور على أقصر مسارات الاجتياز.
لمزيد من الوضوح، يوفر كل فصل تنفيذه الخاص لبنية البيانات المعنية. على سبيل المثال، إذا كانت هذه قائمة مرتبطة بشكل فردي، فسيتم تقديم مثال للفئة التي تنفذ الوظيفة الموصوفة. يبدأ الفصل الأخير من الكتاب، بناءً على المعرفة المكتسبة من الفصول السابقة، في جمع كل المعرفة في صورة واحدة. على سبيل المثال، ستكون قادرًا على تكوين فكرة واضحة عن بنية البيانات التي ستستخدمها وفي أي موقف: مراجعة كتاب: "هياكل بيانات جافا وخوارزمياتها"، روبرت لافوريت - 3هناك أيضًا تمارين صغيرة في نهاية كل فصل. يتضمن بعضها القيام بأشياء باستخدام تطبيق Workshop ، بينما يمنحك البعض الآخر مهام صغيرة مباشرةً في التعليمات البرمجية.

ما هي تطبيقات ورشة العمل

وتستخدم تطبيقات ورشة العمل لتوضيح هذه الهياكل والخوارزميات . تم تصميم التطبيقات كتطبيقات Java الصغيرة التي يمكن تشغيلها في المتصفح. تقوم تطبيقات ورشة العمل بإنشاء مخططات رسومية توضح كيفية عمل الخوارزمية أو بنية البيانات. على سبيل المثال، في أحد التطبيقات المصممة لعرض الأعمدة مرتبة بترتيب تصاعدي، في كل مرة تنقر فيها على زر في الرسم البياني، سيتم تنفيذ الخطوة التالية. في هذه الحالة، سيتم عرض قيم المتغيرات المضمنة في هذه الخوارزمية حتى تتمكن من رؤية كيفية تنفيذ التعليمات البرمجية (يذكرنا بوصف مصحح الأخطاء ، أليس كذلك؟).

كيفية تحميل وتثبيت الورشة

  1. يمكنك تحميل التطبيقات هنا . Рецензия на книгу: «Структуры данных и алгоритмы Java», Роберт Лафоре - 4
  2. انقر فوق WorkshopApplets.ZIP وقم بتنزيل الأرشيف باستخدام التطبيقات الصغيرة.
  3. لفهم التطبيقات الصغيرة، يمكنك قراءة هذا الموضوع والتعليقات عليه.

إيجابيات الكتاب

  • من السهل جدًا قراءته، ويتم شرح العديد من الأمثلة تقريبًا "على أصابعك"؛
  • يفتح عينيك على العديد من الأشياء "الكلاسيكية"، دون استخدام الصيغ الرياضية المعقدة. حسنا، تقريبا بدونهم :)
  • على الرغم من أن الأمثلة موجودة في Java، إلا أن الإجراءات التي تحدث في التعليمات البرمجية يتم شرحها بتفصيل كبير من خلال النص التالي والتعليقات الموجودة في التعليمات البرمجية. لذلك، يمكن لمستخدم أي لغة برمجة قراءتها، نظرًا لأن أمثلة التعليمات البرمجية بسيطة جدًا: فهي تُقرأ تقريبًا مثل الكود الكاذب.

سلبيات الكتاب

  • ورغم الشرح "على الأصابع" فإن فيه ثغرات. لشرح فرز المصفوفات، يرسم المؤلف صورة لفريق كرة قدم، لكن فرز شل لم يتم وصفه عمليًا هناك: لم أتمكن من فهمه وقراءته على الإنترنت؛
  • قد تكون هناك أخطاء إملائية، عادةً في الصور أو الجداول؛
  • بعض التعليمات البرمجية قديمة جدًا.

النظير

أوصي بمثيلات هذا الكتاب أو ما يليه (لمن يريد مواصلة الدراسة):
  • و"الخوارزميات في جافا" بقلم روبرت سيدجويك؛
  • "الخوارزميات: البناء والتحليل" لتوماس كورمين.

الحد الأدنى

الكتاب به سلبيات قليلة، لذا فهو يستحق القراءة حقًا. إنه يشرح بوضوح العديد من الموضوعات الأساسية والأساسية، مثل الأنواع المختلفة والمصفوفات والأشجار والمجموعات والرسوم البيانية وما إلى ذلك. وبما أن الكتاب لا يرتبط بقوة بجافا ، فإن قاعدة المعرفة المكتسبة من دراستها ستكون مفيدة في لغات البرمجة الأخرى. يجب أن يكون لديك، يجب أن تقرأ - إذا كنت مطورًا.Рецензия на книгу: «Структуры данных и алгоритмы Java», Роберт Лафоре - 6
تعليقات
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION