ماهي انواع بنية البيانات

ماهي انواع بنية البيانات
0

ماهي انواع بنية البيانات

ماهي انواع بنية البيانات في الحاسوب هياكل وخوارزميات البيانات المستخدمة في علوم الكمبيوتر، بشكل عام تنقسم بنية البيانات إلى نوعين وكل نوع يندرج تحته عدة أقسام نستعرضها فيما يلي:

  1. بنية بيانات أولية Primitive Data Structures.
  2. هياكل بيانات غير أولية Non-Primitive Data Structures.

بنية بيانات أولية Primitive Data Structures

تحتوي هياكل البيانات الأولية على الداتا أو البيانات البسيطة العادية، أي تخزن نوع واحد فقط من البيانات على سبيل المثال:

  • الأعداد الصحيحة Integer: هو تعبير عن الأعداد الصحيحة فقط في هياكل البيانات دون أرقام عشرية أو كسور، سواء كانت الأرقام بالموجب أو السالب، على سبيل المثال 0، 10، -50 وهكذا واختصارها Int.
  • الأعداد العشرية Float: هو مصطلح في علم الكمبيوتر والبرمجة يُشير إلى الأعداد العشرية والكسور على سبيل المثال: 7.0، 5.18 وهكذا.
  • الحرف Character: تستخدم للدلالة على حرف واحد فقط على سبيل المثال: A، F وهكذا واختصارها في الكتابة البرمجية Char.
  • السلسلة String: هي عبارة عن مجموعة من الأحرف Characters تكتب بين علامات التنصيص ” ” على سبيل المثال، “My Name is Naira”، خاصة ببنية البيانات النصية.
  • القيم الثنائية Booleans: تستخدم في الحالات الشرطية وهي عيارة عن قيم مكونة من عنصرين أو قيم ثنائية إما صحيحة True أو خاطئة False.

حرى بالذكر أن بنية البيانات الأولية تحتوي على قيم بسيطة لا يمكن تقسيمها إلى مكونات أو عناصر أصغر منها، كما أن البيانات الأولية في علوم الكمبيوتر لها حجم وشكل ثابت

هياكل بيانات غير أولية Non-Primitive Data Structures

أما بنية البيانات غير الأولية او المركبة أو المعقدة تنقسم إلى نوعين ولكل نوع أنواع أخرى مرتبطة به نستعرضها تالياً تفصيلياً:

  • بنية البيانات الخطية Linear Data Structures.
  • بنية بيانات غير خطية Non-Linear Data Structures.

بنية البيانات الخطية Linear Data Structures: تنقسم إلى قسمين:

  1. هياكل بيانية ثابتة: لها حجم ثابت، كما أن هياكل البيانات الثابتة وهي نوع من أنواع هياكل البيانات الأولية المعقدة أو غير الأولية، لها ذاكرة بحجم محدد، لا يمكن تغيره بعد ذلك مطلقاً، بالرغم من أن البيانات يمكن تعديلها من قِبل المستخدمين، من أمثلة الهياكل البيانية الثابتة:
  • المصفوفة Array: هي بنية أو هيكل بياني قوي، يسمح للمستخدمين بمعالجة وتخزين مجموعة من العناصر، بشكل مختصر المصفوفة هي مجموعة من العناصر تندرج تحت نفس فئة البيانات، تُخزن القيم في المصفوفة في ذاكرة متنقلة يتم الوصول إليها بفهرس الأرقام الخاصة بها.

مثال على المصفوفة Array موضح في الصورة التالية.

المصفوفة ‏Array ماهي انواع بنية البيانات

  1. بنية بيانات ديناميكية: لا تمتلك حجم معين تدور الذاكرة في الوقت الفعلي، كما أن حجم البيانات الديناميكية وهي نوع من أنواع الهياكل البيانية الخطية، يتغير اثناء تنفيذ البرنامج، كما يمكن للمستخدمين تغيير حجمها وتغيير العناصر في الوقت الفعلي للتشغيل، من الأمثلة على بنية البيانات الديناميكية:
  • القوائم المتصلة Linked lists: حيث تكون عناصر البيانات متصلة من خلال مجموعة من النقاط مثل الروابط والمؤشرات، كل نقطة تحتوي على اثنين من الفئات بيانات ومؤشر، الأول يحتوي على البيانات الواقعية والمؤشر تكون من عنوان النقاط المترتبة على بعضها البعض، كما أن مؤشر النقطة الأخيرة في هياكل القوائم المتصلة للبيانات يُعبر عنه بصفر.

مثال على القوائم المتصلة Linked lists في الصورة التالية.

القوائم المتصلة ‏Linked lists

  • التكدس Stack: يسير هيكل البيانات التكدس على نظام LIFO المستخدم في حفظ المخزون، الذي تدور فكرته أن العناصر الأخيرة المُدخلة هي التي تم بيعها في الأول، وبالتالي في بيانات التكدس أخر عنصر خُزن سيكون أول عنصر يخرج وأول عنصر يُزال.

مثال على التكدس Stack في الصورة التالية.

التكدس ‏Stack

  • الصف Queue: أما عن الصف وهو مثال على بنية بيانات ديناميكية، التي تندرج تحت فئة البيانات غير الأولية المعقدة، تسير على نظام FIFO، أي أن ما يُخزن في البداية هو الذي يكون أول المخرجات أو المحذوفات من النظام.

مثال على الصف Queue في الصورة التالية.

الصف ‏Queue

بنية بيانات غير خطية Non-Linear Data Structures: تنقسم بنية البيانات غير الخطية إلى نوعان:

  • الرسوم البيانية Graphs: هي عبارة عن عدد غير نهائي من القمم والرؤوس، على سبيل المثال رسم بياني يُمثل مستخدم واحد فقط في شبكة الهواتف.

مثال على الرسوم البيانية Graphs في الصورة التالية

الرسوم البيانية ‏Graphs ماهي انواع بنية البيانات

  • الشجر Trees: من الممكن أن تتشابه مع الرسوم البيانية، لكنها تتميز بترتيب هرمي، حيث تتكون من مجموعة من النقاط، كل نقطة تحتوي على قيمة، بالإضافة إلى قائمة من المراجع للنقاط الأخرى.

مثال على الشجر Trees في الصورة التالية[1][2][3][4]

الشجر ‏Trees

مقارنة بين انواع بنية البيانات الخطية وغير الخطية

في الجدول التالي نوضح المقارنة بين البيانات الخطية وغير الخطية وهم المكونان لبنية البيانات غير الأولية أو المعقدة Non-Primitive Data Structures:

أوجه المقارنة بنية البيانات الخطية Linear Data Structures بنية بيانات غير خطية Non-Linear Data Structures
ترتيب البيانات تخزن بشكل متتابع واحدة تلو الأخرى تخزن بشكل هرمي
تخزين البيانات تُنظم في طبقة واحدة تُنظم في عدة طبقات
الوقت يزداد الوقت كلما زاد حجم البيانات يبقى كما هو مهما زاد حجم البيانات
المزايا سهلة الاستخدام في حالة حجم البيانات الصغيرة سهلة الاستخدام مع البيانات المعقدة والمركبة
استخدام الذاكرة غير فعال فعال
الاستخدام تطوير السوفت وير الذكاء الصناعي وإنشاء الصور
الأمثلة

المصفوفة Array

التكدس Stack

القوائم المتصلة Linked lists

الصف Queue

الشجر Trees

الرسوم البيانية Graphs

مميزات وعيوب بنية البيانات

  • مميزات بنية البيانات.
  • عيوب بنية البيانات.

مميزات بنية البيانات:

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

عيوب بنية البيانات:

  • وجود صعوبة في تصميم وتنفيذ البيانات الأكثر تعقيداً.
  • غير مرنة وغير قابلة للتوسع.
  • قد تكون هناك تعقيدات في تصليح الأخطاء بالهياكل البيانية أو اختبار صحتها.
  • صعوبة في تعديل بنية البيانات الموجودة بالفعل.[2]

تطبيقات بنية البيانات الخطية وغير الخطية في الحياة

نقدم أمثلة على نماذج تطبيق أنواع بنية البيانات الخطية وغير الخطية:

تطبيقات بنية البيانات الخطية Linear Data Structures:

  1. المصفوفة Array:
  1. القوائم المتصلة Linked lists:
  • تصميم قوائم تشغيل الموسيقى، الأغاني السابقة والتالية.
  • نظام عرض الصور بين الصور السابقة والتالية.
  1. التكدس Stack:
  • سجل المكالمات على الجوالات.
  • الاطلاع على المواقع التي تمت زيارتها سابقاً.
  1. الصف Queue: من الأمثلة الحياتية على الصف أو Queue في بنية البيانات الخطية هو صف الناس أمام شباك التذاكر أو على السلم الكهربائي، أو في مراب السيارات.

تطبيقات بنية بيانات غير خطية Non-Linear Data Structures:

  1. الرسوم البيانية Graphs:
  • جوجل ماب.
  • دراسة علم الجزيئات في مجالات الفيزياء والكيمياء.
  1. الشجر Trees:
  • تطوير الألعاب.
  • فهرسة قواعد البيانات.
  • تصميم مخططات انسيابية لتسهيل الوصول إلى القرار النهائي.
  • مواقع التواصل الاجتماعي.
  • اسم الدومين.[5]

خريطة ذهنية عن انواع بنية البيانات

حتى نُسهل عليك متابعة أنواع بنية البيانات، بالإضافة إلى العناصر المكونة لكل نوع، نُقدم الخريطة الذهنية التالية:

خريطة ذهنية عن انواع بنية البيانات

0
guest
1 تعليق
تيمور
تيمور
2 سنوات

مفيد

Scroll to Top