هياكل البيانات في بايثون

نشرت: 2022-06-03

تُعد هياكل البيانات من أهم المفاهيم الأساسية في علوم الكمبيوتر وإدارة البرامج وتُستخدم على نطاق واسع لكتابة البرامج بأي لغة. Python هي لغة برمجة قوية وتفاعلية وموجهة للكائنات ومفسرة يمكن من خلالها دراسة أساسيات بنية البيانات بسهولة أكبر ، على عكس لغات البرمجة الأخرى.

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

جدول المحتويات

ما هي بنية البيانات؟

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

تعلم دورات علوم البيانات عبر الإنترنت في upGrad

هياكل البيانات الخطية

تسمح هياكل البيانات الخطية بتخزين عناصر البيانات في تسلسل مناسب. هناك عدة أنواع من هياكل البيانات الخطية. وهم على النحو التالي:-

  • صفيف - ترتيب تسلسلي لعناصر البيانات المقترنة بفهرس عنصر البيانات.
  • المكدس - المكدس عبارة عن بنية بيانات تتبع ترتيبًا معينًا للعملية. يطلق عليهم اسم FILO (أول ما يدخل أخيرًا) أو LIFO (آخر ما يرد أولاً يخرج أولاً).
  • قائمة مرتبطة - يتكون كل عنصر بيانات من ارتباط إلى عنصر آخر والبيانات الموجودة فيه.
  • المصفوفة - المصفوفة هي بنية بيانات ثنائية الأبعاد حيث يُشار إلى عنصر البيانات بزوج من المؤشرات.

قائمة الانتظار - قائمة الانتظار تشبه الأكوام ، لكن ترتيب العملية الوحيد هو FIFO (First In First Out).

اقرأ مقالاتنا المشهورة حول علوم البيانات الأمريكية

دورة تحليل البيانات بشهادة دورة مجانية عبر الإنترنت لـ JavaScript مع شهادة أسئلة وأجوبة مقابلة Python الأكثر شيوعًا
أسئلة وأجوبة مقابلة محلل البيانات أعلى الخيارات الوظيفية لعلوم البيانات في الولايات المتحدة الأمريكية [2022] SQL مقابل MySQL - ما هو الفرق
الدليل النهائي لأنواع البيانات راتب مطور Python في الولايات المتحدة راتب محلل البيانات في الولايات المتحدة: متوسط ​​الراتب

هياكل البيانات غير الخطية

لا تتبع هياكل البيانات غير الخطية ارتباطًا تسلسليًا لعناصر البيانات. في بنية البيانات هذه ، يمكن ربط أي مجموعة أو زوج من عناصر البيانات ببعضها البعض ، ولا يوجد تسلسل صارم للوصول إلى عناصر البيانات.

  • الكومة - الكومة هي نوع خاص من بنية بيانات الشجرة حيث تكون البيانات في العقدة الأصلية إما أقل بشكل صارم من العقد الفرعية أو أكبر من العقد الفرعية أو مساوية لها.
  • الشجرة الثنائية - الشجرة الثنائية هي بنية بيانات تربط كل عنصر بيانات بحد أقصى من عنصري بيانات آخرين. يبدأ مع عقدة جذر.
  • الرسم البياني - الرسم البياني هو ترتيب للعقد والرؤوس حيث تتصل بعض العقد ببعضها البعض عبر روابط.
  • جدول التجزئة - جدول التجزئة هو بنية بيانات مكونة من مصفوفات مرتبطة ببعضها البعض بمساعدة دالة التجزئة. يستخدم مفاتيح لاسترداد القيم بدلاً من الفهرس من عناصر البيانات.

هياكل البيانات المضمنة في بايثون

هياكل البيانات في Python خاصة بلغة البرمجة هذه لأنها تساعد في التخزين المرن لأنواع البيانات المتنوعة وتساعد على معالجة البيانات بشكل أسرع في بيئة Python. نظرًا لأن هياكل البيانات هذه يتم تحميلها مسبقًا في بيئات Python ، فإن لغة Python أسهل في الاستخدام للمبرمجين حيث يحصلون على الحلول أو يمكنهم تطويرها بشكل أسرع.

تتمتع Python بدعم ضمني لهياكل البيانات التي تساعد في التخزين والوصول السهل للبيانات وتسمح للمستخدمين بإنشاء هياكل البيانات الخاصة بهم مع التحكم الكامل. هياكل البيانات المضمنة في Python هي كما يلي: -

قائمة

تُعرَّف المجموعة المرتبة من العناصر على أنها قائمة ، وهي جزء لا يتجزأ من هياكل البيانات في إنشاء مشروع في Python. "المجموعات المطلوبة" تعني أن كل عنصر ينتمي إلى قائمة يتكون من أمر يستخدم على وجه التحديد لتعريفها بشكل فريد. هذا الترتيب للعناصر هو خاصية تظل بطبيعتها ثابتة طالما استمرت القائمة. كل شيء في بايثون يعتبر كائناً. ومن ثم ، فإن إنشاء قائمة يؤدي بشكل أساسي إلى إنشاء كائن Python من نوع معين.

List_A = [العنصر 1 ، العنصر 2 ، العنصر 3 ... .. ، العنصر n]

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

مترابطة بيانية

tuple هو بنية بيانات أخرى مدمجة في Python وهي مجموعة مرتبة من الكائنات. تأتي المجموعات بوظائف محدودة ، على عكس القوائم. القابلية للتغير هي السمة الرئيسية المستخدمة للتمييز بين المجموعات والقوائم. القوائم قابلة للتغيير ، كما أن الصفوف غير قابلة للتغيير. لا يمكن إضافة المجموعات أو تعديلها أو حذفها بمجرد إنشائها بالفعل. في القوائم ، يلزم استخدام الأقواس لتضمين العناصر مقسومة على فاصلات. من ناحية أخرى ، تعتبر المجموعات اختيارية لاستخدام الأقواس في إنشائها ولكن يوصى بها على نطاق واسع للتمييز بين بداية المجموعة ونهايتها. هنا نموذج tuple:

tuple_A = (عنصر 1 ، عنصر 2 ، عنصر 3 ، ... عنصر n)

يتم إنشاء المجموعات ككيان واحد ويتم استخدامها بشكل أساسي عندما لا يرغب المبرمج في السماح بأي بيانات تعديل. يتم استخدامها على نطاق واسع لإنشاء كائن يهدف إلى الحفاظ على سلامته طوال حياته. نظرًا لأن المجموعات غير قابلة للتغيير ، فمن المحتمل أن تمنع التعديل العرضي أو الإضافة أو الإزالة لأي بيانات. تتمثل إحدى فوائد استخدام tuples في أنها تستخدم ذاكرة أقل ، مما يساعد في تنفيذ البرامج بشكل أسرع من استخدام القوائم.

مجموعات

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

set_a = {"العنصر 1" ، "العنصر 2" ، "العنصر 3" ، ... .. ، "العنصر ن"}

تُستخدم المجموعات بشكل أساسي للتحقق مما إذا كانت بعض العناصر ضمن مجموعة أم لا. على سبيل المثال ، تم تحسين المجموعات بشكل كبير لاختبارات العضوية. يمكن استخدامها أيضًا لمعرفة ما إذا كانت المجموعة مجموعة فرعية من مجموعة مختلفة والتعرف على العلاقة بين مجموعتين.

قاموس

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

تحقق من برامجنا في الولايات المتحدة - علوم البيانات

برنامج الشهادة المهنية في علوم البيانات وتحليلات الأعمال ماجستير العلوم في علوم البيانات ماجستير العلوم في علوم البيانات برنامج الشهادة المتقدمة في علوم البيانات
برنامج PG التنفيذي في علوم البيانات المعسكر التدريبي لبرمجة بايثون برنامج الشهادة المهنية في علوم البيانات لاتخاذ قرارات الأعمال برنامج متقدم في علوم البيانات

لمتابعة مهنة في علم البيانات ، يجب أن تكون لديك معرفة شاملة بهياكل البيانات في بايثون. إذا كنت تكافح للعثور على دورة تدريبية موثوقة ، فإن upGrad لديها أفضل برنامج شهادة احترافية في علوم البيانات وتحليلات الأعمال من جامعة ميريلاند ، وهي إحدى أفضل الجامعات الأمريكية لمساعدتك على البدء ومنحك فهمًا شاملاً لهذا الموضوع.

ما هي أهم بنية بيانات في بايثون؟

هيكل البيانات الأكثر أهمية في Python هو القاموس ، لأنه محسّن للغاية وقادر على تعيين كميات كبيرة من البيانات.

لماذا نحتاج هياكل البيانات في بايثون؟

هياكل البيانات مطلوبة لبناء الكود وتصنيفه مع تسهيل وصول برامج Python إلى البيانات أو استخدامها أو تعديلها.

ما هي هياكل البيانات الأساسية المضمنة في Python؟

القوائم ، Set ، Dictionary ، و Tuple هي هياكل البيانات الأربعة الرئيسية المضمنة في Python.