لغة Z (تراكيب المعطيات  )                     العودة إلى الملخص

 

البنى

الجداول

القوائم

القوائم المزدوجة

الصفوف  

الأكوام

الأشجار البحث الثنائي

الأشجار البحث المتعددة

الملفات

 

 

 البنى      

 

البنية عبارة عن مجموعة من العناصر من أنواع مختلفة. يمكن أن يكون عنصر البنية عدديا أو جدول أحادية البعد من العددية.

يمكن أن تكون البنى ثابتة أو ديناميكية

 

يمكن أن تكون البنية بسيطة ، أي تتكون فقط من العديديات.

يمكن أن تكون البنية معقدًا ، أي تتكون من عديديات و / أو جداول أحادية البعد من العديديات. 

 

تعريف البنى:

 ليكن ‹قم› : [بنية] (نوع1، نوع2،...،نوع-ن،...) [ديناميكي]

 

‹قم› : قائمة المعرفات مفصولة بفواصل.

نوع-ن إما أن يكون نوعًا عديديا أو جدول ذات بعد واحد من العديديات.

 

أمثلة:

 ب1 : (صحيح، سلسلة) ؛
ب2 : بنية ( سلسلة، صحيح، منطيقي) ؛
ب3 : ( صحيح، جدول(5) من سلسلة) ديناميكي؛
 

 الجداول

 

الجدول عبارة عن مجموعة من العناصر المتجانسة.

يمكن أن يكون الجدول بسيط ، أي يتكون فقط من العديديات.

يمكن أن يكون الجدول معقدًا ، أي يتكون من عديديات و / أو جداول ذات بعد واحد من العديديات.

يمكن أن يكون الجدول ثابتًا أو ديناميكيًا.

 

تعريف الجداول:

ليكن ‹قم› : جدول (بعد1، بعد2،...) من نوع-م من نوع-م ...من نوع-ب [ديناميكي]

 

‹قم› : قائمة المعرفات مفصولة بفواصل.

 نوع-م في{ جدول، كومة، صف، قائمة، قائمة_مزدوجة، شجرة_بحث_ثنائية، شجرة_بحث_متعددة }

نوع-ب هو عددي أو بنية بسيطة.

 

أمثلة:

ج1 : جدول (5) ديناميكي؛
ج2، ج3 : جداول (3، 8) من سلاسل ؛


  القوائم 

 

 القائمة المرتبطة هي مجموعة من الخلايا المخصصة ديناميكيا (أي أثناء تنفيذ البرنامج) المرتبطة ببعضها البعض. تحتوي الخلية عادة على حقلين: قيمة وعنوان.

 المستخدم هو الذي ينشئ القائمة ، الذي يعدلها عن طريق إضافة أو حذف الخلايا ، الذي يتصفحها بهدف القيام بعملية معينة.

يمكن أن يكون حقل "القيمة" من أي نوع.

 

تعريف القوائم :

ليكن ‹قم› : قائمة [ من نوع-م من نوع-م ... ] [من نوع-ب]

 

‹قم› : قائمة المعرفات مفصولة بفواصل.

نوع-م  في { جدول، كومة، صف، قائمة، قائمة_مزدوجة، شجرة_بحث_ثنائية، شجرة_بحث_متعددة }

نوع-ب هو عددي أو بنية بسيطة.

 

أمثلة:

 ق1 : قائمة من (سلسلة، صحيح)؛
ق2 : قائمة من كومة من سلسلة ؛
ق3 : قائمة من سلاسل؛
 القوائم المزدوجة

 

القائمة ثنائية الاتجاه هي قائمة مرتبطة متكونة من مجموعة من الخلايا  يمكن اجتيازها في كلا الاتجاهين

يحتوي العنصر على ثلاثة حقول: القيمة والعنوان الأيسر والعنوان الأيمن.
يمكن أن يكون حقل "القيمة" من أي نوع.

 

تعريف القوائم المزدوجة:

ليكن ‹قم› : قائمة_مزدوجة [ من نوع-م من نوع-م ... ] [من نوع-ب]

 

‹قم› : قائمة المعرفات مفصولة بفواصل.

نوع-م في  { جدول، كومة، صف، قائمة، قائمة_مزدوجة، شجرة_بحث_ثنائية، شجرة_بحث_متعددة}

نوع-ب هو عددي أو بنية بسيطة. 

 

أمثلة:

 قم1 : قائمة_مزدوجة من (سلسلة، صحيح)؛
قم2 : قائمة_مزدوجة من كومة من سلسلة ؛
قم3 : قائمة_مزدوجة من سلاسل؛
 

 الصفوف  

 

 الصف يطيع طريقة فيفو (ما يدخل أولا يخرج أولا). إنها مجموعة من العناصر بحيث يتم إدراج أي عنصر جديد في النهاية ويتم حذف أي عنصر في البداية.

يمكن أن يكون العنصر من أي نوع.

 

تعريف الصفوف :

ليكن ‹قم› : صف [ من نوع-م من نوع-م ... ] [من نوع-ب]

 

‹قم› : قائمة المعرفات مفصولة بفواصل.

نوع-م في  { جدول، كومة، صف، قائمة، قائمة_مزدوجة، شجرة_بحث_ثنائية، شجرة_بحث_متعددة }

نوع-ب هو عددي أو بنية بسيطة.

 

أمثلة:

ص1 : صف من (سلسلة، صحيح)؛
ص2 : صف من كومة من سلسلة ؛
ص3 : صف من سلاسل؛


 الأكوام

 

كومة يطيع مبدأ 'ليفو':(ما يدخل اخيرا يخرج أول). إنها مجموعة من العناصر بحيث يتم إدراج أي عنصر جديد في البداية ويتم إزالة أي عنصر في البداية.

يمكن أن يكون العنصر من أي نوع.

 

تعريف الأكوام:

ليكن ‹قم› : كومة [ من نوع-م من نوع-م ... ] [من نوع-ب]

 

‹قم› : قائمة المعرفات مفصولة بفواصل.

نوع-م في  { جدول، كومة، صف، قائمة، قائمة_مزدوجة، شجرة_بحث_ثنائية، شجرة_بحث_متعددة }

نوع-ب هو عددي أو بنية بسيطة.

 

أمثلة:

ك1 : كومة من (سلسلة، صحيح)؛
ك2 : كومة من كومة من سلسلة ؛
ك3 : كومة من سلاسل؛
 

 الأشجار البحث الثنائي

 

 تمثل شجرة البحث الثنائية مجموعة من البيانات القابلة للمقارنة. جميع البيانات الموجودة في الشجرة الفرعية اليسرى لأي عقدة بالمعلومات س أقل من س ،

جميع البيانات الموجودة في الشجرة الفرعية اليمنى لأي عقدة بالمعلومات س أكبر من س.

بشكل حدسي ، تتكون العقدة من 3 حقول: المعلومات وحقلي عنوان يوفران الأسلاك اليمنى واليسرى

شجرة البحث الثنائي هي تركيب المعطيات  ديناميكية بشكل عام.

 

تعريف الأشجار البحث الثنائي :

ليكن ‹قم› : شجرة_بحث_ثنائية [ من نوع-م من نوع-م ... ] [من نوع-ب]

 

‹قم› : قائمة المعرفات مفصولة بفواصل.

نوع-م في { جدول، كومة، صف، قائمة، قائمة_مزدوجة، شجرة_بحث_ثنائية، شجرة_بحث_متعددة }

نوع-ب هو عددي أو بنية بسيطة.

 

أمثلة:

ش1 : شجرة_بحث_ثنائية من (سلسلة، صحيح)؛
ش2 : شجرة_بحث_ثنائية من كومة من سلسلة ؛
ش3 : شجرة_بحث_ثنائية من سلاسل؛
 

الأشجار البحث المتعددة

  

 تسمح لك شجرة البحث المتعددة بتمثيل مجموعة من البيانات القابلة للمقارنة. هذا هو تعميم شجرة البحث الثنائية. بدلا من الامتلاك على قيمةواحدة وحقلي عنوان ،

 لدينا ص عناوين و (ص-1) قيم ، وفي هذه الحالة يقال إن شجرة البحث المتعددة ذات ترتيب ص.

 بشكل حدسي ، تحتوي العقدة على النموذج التالي: (عنوان 1, قيمة 1, عنوان 2, قيمة 2,...... قيمة ص-1 ، عنوان ص).

جميع بيانات الشجرة الفرعية التي لها جذر عنوان 1 أقل من قيمة 1 ،

وجميع البيانات الموجودة في الشجرة الفرعية التي لها جذر عنوان 2 أكبر من قيمة 1 وأقل من قيمة 2 ، إلخ.
يمكن أن يكون العنصر(عقدة) من أي نوع.

 

تعريف الأشجار البحث المتعددة:

ليكن ‹قم› : شجرة_بحث_متعددة[ من نوع-م من نوع-م ... ] [من نوع-ب] 

 

‹قم› : قائمة المعرفات مفصولة بفواصل.

نوع-م في  { جدول، كومة، صف، قائمة، قائمة_مزدوجة، شجرة_بحث_ثنائية، شجرة_بحث_متعددة}

نوع-ب هو عددي أو بنية بسيطة.

 

أمثلة:

ش1 : شجرة_بحث_متعددة(4) من (سلسلة، صحيح)؛
ش2 : شجرة_بحث_متعددة(2) من كومة من سلسلة ؛
ش3 : شجرة_بحث_متعددة(3) من سلاسل؛
 

 الملفات

 

 الملف عبارة عن مجموعة من البنى ، يتم تخزينها عادة على القرص. يمكن أن تكون البنى سجلات (مستوى المستخدم) أو كتل (مستوى المصمم).

 يحتوي الملف على بنية معينة (رأس الملف) ضرورية لتصميم هياكل الملفات.

 

تعريف الملفات:

ليكن م : ملف من نوع-م [صدر_ملف (نوع-ب، نوع-ب،...)] مخزن ‹قم›

 

‹قم› : قائمة المعرفات مفصولة بفواصل.

 

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

 

 

أمثلة:

م1 : ملف من سلاسل مخزن ك1، ك2؛
م2 : ملف من جدول(5) من صحيح مخزن ك ؛
م3 : ملف من (صحيح، جدول(3) من محرف) صدر_ملف(صحيح،صحيح) مخزن ك3 ؛
م4 : ملف من محرف صدر_ملف (صحيح، سلسلة، منطيقي) مخزن ك4 ؛