أفضل 5 هياكل بيانات يجب أن يعرفها مبرمج جافا

نشرت: 2022-08-20

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

هناك نوعان من هياكل البيانات ، وهما هياكل البيانات البدائية وغير البدائية.

تحقق من دوراتنا المجانية المتعلقة بتطوير البرمجيات.

بنية البيانات البدائية هي نوع بيانات بدائي ، على سبيل المثال ، char و int و float و pointer و double. يمكن أن تحتوي هياكل البيانات هذه على قيمة واحدة. من ناحية أخرى ، تتكون هياكل البيانات غير البدائية من نوعين ، أي هياكل البيانات الخطية وغير الخطية.

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

استكشف دوراتنا المجانية في تطوير البرمجيات

أساسيات الحوسبة السحابية أساسيات JavaScript من البداية هياكل البيانات والخوارزميات
تقنية Blockchain رد فعل للمبتدئين أساسيات Java الأساسية
جافا Node.js للمبتدئين جافا سكريبت متقدم

في هذه المقالة ، سنناقش أهم خمسة هياكل بيانات ضرورية لمبرمجي Java لمعرفة: -

المصفوفات في جافا

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

تحقق من برنامج Full Stack Development Bootcamp (JS / MERN) - وظيفة مضمونة من upGrad

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

استكشف دوراتنا التدريبية الشهيرة في هندسة البرمجيات

ماجستير العلوم في علوم الكمبيوتر من جامعة جون مورس بليفربول و IIITB برنامج شهادة الأمن السيبراني من معهد كاليفورنيا للتكنولوجيا CTME
برنامج تدريب تطوير المكدس الكامل برنامج PG في Blockchain
برنامج الدراسات العليا التنفيذية في تطوير البرمجيات - تخصص في DevOps برنامج PG التنفيذي في تطوير Full Stack
عرض جميع دوراتنا أدناه
دورات هندسة البرمجيات

مثال على مصفوفة جافا

يوجد أدناه مثال على مصفوفة Java ، حيث سيتم الإعلان عن المصفوفة وإنشاء مثيل لها وتهيئتها واجتيازها.

// برنامج Java لإظهار كيفية التصريح والتهيئة والتهيئة

// واجتياز مصفوفة جافا.

فئة Testarray {

العامة الثابتة الفراغ الرئيسي (سلاسل سلسلة []) {

int a [] = new int [5] ؛ // تصريح وإنشاء مثيل

a [0] = 10 ؛ // التهيئة

أ [1] = 20 ؛

أ [2] = 70 ؛

أ [3] = 40 ؛

أ [4] = 50 ؛

// عبور المصفوفة

لـ (int i = 0 ؛ i <a.length ؛ i ++) // length هو خاصية المصفوفة

System.out.println (a [i]) ؛

}}

انتاج:

10

20

70

40

50

مهارات تطوير البرمجيات عند الطلب

دورات جافا سكريبت دورات جافا الأساسية دورات هياكل البيانات
دورات Node.js دورات SQL دورات تطوير مكدس كاملة
دورات NFT دورات DevOps دورات البيانات الضخمة
دورات React.js دورات الأمن السيبراني دورات الحوسبة السحابية
دورات تصميم قواعد البيانات دورات بايثون دورات العملات المشفرة

الأشجار في جافا

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

تعلم دورات تطوير البرمجيات عبر الإنترنت من أفضل الجامعات في العالم. اربح برامج PG التنفيذية أو برامج الشهادات المتقدمة أو برامج الماجستير لتتبع حياتك المهنية بشكل سريع.

في البرمجة و Java ، تكون بنية أي عقدة كما يلي:

عقدة البنية

{

بيانات int؛

عقدة الهيكل * اليسار ؛

عقدة الهيكل * الحق ؛

}

الأكوام في جافا

يُطلق على بنية البيانات الخطية المستخدمة بشكل أساسي لتخزين مجموعة من الكائنات اسم Stack. يعتمد على Last-In-First-Out (LIFO) ويوفر العديد من الفئات والواجهات لتخزين مجموعات الكائنات. إحدى هذه الفئات هي فئة Stack ، التي تحتوي على مُنشئ افتراضي لإنشاء مكدس فارغ. تكون الصيغة كما يلي: -

المكدس العام ()

لإنشاء Stack ، قم باستيراد حزمة java.util أولاً ثم قم بإنشاء كائن من فئة Stack. تكون الصيغة كما يلي: -

Stack stk = مكدس جديد () ؛

أو

Stack <type> stk = مكدس جديد <> () ؛

(يشير النوع إلى نوع المكدس مثل String و Integer وما شابه ذلك.)

يحتوي هيكل بيانات المكدس أيضًا على عمليتين متكاملتين - الدفع والبوب. طريقة الدفع تضع العنصر في أعلى المكدس. إنه مشابه لطريقة addElement (item) المستخدمة في فئة Vector. يتم تمرير عنصر المعلمة أولاً ليتم إدراجه في المكدس. من ناحية أخرى ، تحذف طريقة pop كائنًا موجودًا أعلى المكدس ، ويتم إرجاع نفس الكائن. إذا كان المكدس فارغًا ، فإنه يستخدم EmptyStackException.

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

كيف يتم تنفيذ تجريد البيانات في Java؟ ما هي الطبقة الداخلية في جافا؟ معرّفات Java: التعريف والنحو والأمثلة
فهم التغليف في OOPS بأمثلة شرح حجج سطر الأوامر في لغة سي أهم 10 ميزات وخصائص للحوسبة السحابية في عام 2022
تعدد الأشكال في جافا: المفاهيم والأنواع والخصائص والأمثلة الحزم في Java وكيفية استخدامها؟ برنامج Git التعليمي للمبتدئين: تعلم Git من الصفر

قائمة الانتظار في جافا

تعد واجهة قائمة الانتظار جزءًا من حزمة java.util وهي تعمل على توسيع واجهة المجموعة. يتم استخدامه بشكل أساسي لعقد العناصر التي يتم تشغيلها في ترتيب FIFO (First In First Out). تتبع قائمة الكائنات المرتبة هذه مبدأ FIFO (First-In-First-Out) حيث يتم استخدامه لإدراج العناصر في نهاية القائمة وحذف العناصر في بداية القائمة.

للإعلان في هذه الواجهة ، تتطلب قائمة الانتظار فئة محددة. الأكثر شيوعًا بين هذه الفئات هي LinkedList و PriorityQueue ؛ ومع ذلك ، أيا من هذه التطبيقات هو مؤشر الترابط الآمن. لذلك ، غالبًا ما يتم استخدام PriorityBlockingQueue كتطبيق بديل للتنفيذ الآمن لمؤشر الترابط.

يمكن ذكر ما يلي كإعلان واجهة قائمة الانتظار:

قائمة انتظار الواجهة العامة تمتد المجموعة

القوائم المرتبطة في Java

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

استنتاج

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

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

تسمح بنية البيانات الخطية بتخزين عناصر البيانات بطريقة متسلسلة. تتضمن أنواع هياكل البيانات الخطية المصفوفات والمكدسات وقوائم الانتظار والقوائم والمصفوفات المرتبطة.

ما هي الهياكل غير الخطية؟

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

ما هي الاشجار؟

الأشجار هي هياكل بيانات هرمية غير خطية. الشجرة هي نوع بيانات مجردة يتكون من عقدة جذر (أصل) مع عدة عقد أخرى متصلة بها.