الانتقال إلى المحتوى الرئيسي

كيفية إنشاء مجموعة متناظرة فيما يتعلق المركز

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

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

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

  1. كيفية إنشاء صفيف متماثل
  2. طرق لإنشاء صفيف
  3. 1. تهيئة مصفوفة عند الإعلان عنها
  4. 2. باستخدام طريقة الدفع( )
  5. 3. باستخدام الدورة
  6. 4. باستخدام طريقة كونكات ()
  7. 5. إنشاء مصفوفة باستخدام مشغل التوزيع
  8. مبادئ التماثل
  9. خوارزمية لإنشاء مصفوفة متماثلة
  10. سؤال وجواب
  11. كيف يمكنني إنشاء مجموعة متناظرة فيما يتعلق مركز?
  12. كيف يمكنني إعادة ترتيب عناصر مصفوفة لإنشاء مصفوفة متناظرة بالنسبة إلى المركز?
  13. هل من الممكن إنشاء مصفوفة متماثلة بالنسبة للمركز دون استخدام مؤشرات إضافية?
  14. ما هي الطرق الأخرى هناك لإنشاء صفيف متماثل بالنسبة للمركز?
  15. هل من الممكن إنشاء مصفوفة متماثلة بالنسبة للمركز إذا كان هناك في البداية نصف واحد فقط من المصفوفة?
  16. هل من الممكن إنشاء مصفوفة متماثلة بالنسبة للمركز من مصفوفة غير متماثلة?

كيفية إنشاء صفيف متماثل

المصفوفة المتماثلة هي مصفوفة يتم وضع عناصرها بشكل متماثل بالنسبة إلى مركزها. بمعنى آخر ، تكون عناصر المصفوفة على نفس المسافة من المركز ولها نفس القيم.

لإنشاء مصفوفة متماثلة ، اتبع الخطوات التالية:

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

مثال على كود بايثون:

الحجم = 9

صفيف = [لا شيء] * الحجم

مركز = حجم / / 2

لأني في النطاق (مركز + 1):

صفيف [أنا] = صفيف [الحجم-أنا-1] = أنا

طباعة (صفيف)

، وهو متماثل فيما يتعلق بمركزه.

وبالتالي ، يمكن إنشاء مصفوفة متماثلة من خلال تحديد حجم المصفوفة ، وإنشاء مصفوفة فارغة ، وحساب قيمة العنصر المركزي وملء عناصر المصفوفة بقيم متماثلة.

طرق لإنشاء صفيف

في لغة البرمجة ، يمكنك إنشاء مصفوفة بطرق مختلفة. دعونا ننظر إلى بعض منهم.

1. تهيئة مصفوفة عند الإعلان عنها

يمكنك تحديد عناصره على الفور عند إعلان صفيف. على سبيل المثال:

مجموعة فار= [1, 2, 3, 4, 5];

في هذا المثال ، سيحتوي صفيف الصفيف على العناصر: 1, 2, 3, 4, 5.

2. باستخدام طريقة الدفع( )

يمكنك إنشاء مصفوفة فارغة وإضافة عناصر باستخدام طريقة الدفع (). على سبيل المثال:

مجموعة فار = [];

صفيف.دفع (1);

صفيف.دفع (2);

صفيف.دفع (3);

بعد تنفيذ هذا الرمز ، سيحتوي صفيف الصفيف على العناصر: 1 ، 2 ، 3.

3. باستخدام حلقة

يمكنك استخدام حلقة لإنشاء مصفوفة وإضافة عناصر إليها. على سبيل المثال:

مجموعة فار = [];

إلى عن على (فار أنا = 1 ؛ أنا <= 5 ؛ أنا i) {

صفيف.دفع (أنا);

}

بعد تنفيذ هذا الرمز ، سيحتوي صفيف الصفيف على العناصر: 1, 2, 3, 4, 5.

4. باستخدام طريقة كونكات ()

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

مجموعة فار 1 = [1 ، 2];

مجموعة فار 2 = [3 ، 4 ، 5];

صفيف فار = صفيفة1.كونكات (مجموعة 2);

نتيجة لذلك ، سيحتوي صفيف الصفيف على العناصر: 1, 2, 3, 4, 5.

5. إنشاء مصفوفة باستخدام مشغل التوزيع

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

مجموعة فار 1 = [1 ، 2];

مجموعة فار 2 = [3 ، 4 ، 5];

مجموعة فار 3 = [...مجموعة 1, ...(2 ، 6 ، 7 ، 8);

سيحتوي صفيف الصف 3 على العناصر: 1, 2, 3, 4, 5, 6, 7, 8.

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

مبادئ التماثل

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

عند إنشاء تركيبات متناظرة ، خاصة في المصفوفة ، يجب اتباع عدة مبادئ:

  1. المحور المركزي: لإنشاء مصفوفة متناظرة ، تحتاج إلى تحديد المحور المركزي. إنه نقطة ارتكاز رئيسية ويمر دائما عبر مركز الصورة أو الحاوية. يمكن أن يكون محور عمودي أو أفقي أو قطري.
  2. الاقتران: تتكون المصفوفة المتماثلة من عناصر مقترنة تقع على جانبي المحور المركزي. يجب أن تكون العناصر المقترنة متشابهة أو متشابهة في الشكل أو الحجم أو اللون.
  3. التوازن: يجب أن تكون جميع العناصر في صفيف متماثل متباعدة بشكل متساو بالنسبة للمحور المركزي. يجب أن تكون المسافات بين العناصر هي نفسها.

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

خوارزمية لإنشاء مصفوفة متماثلة

لإنشاء مصفوفة متماثلة ، اتبع الخطوات التالية:

  1. تحديد البعد من مجموعة-عدد الصفوف والأعمدة.
  2. تخصيص الذاكرة لمجموعة باستخدام المشغل الجديد.
  3. املأ المصفوفة بقيم متناظرة بالنسبة للمركز. يمكن تحديد القيمة الأولية لكل عنصر من عناصر المصفوفة بشكل تعسفي.
  4. اعرض المصفوفة على الشاشة للتحقق منها.

قد يبدو نموذج التعليمات البرمجية للخوارزمية لإنشاء مصفوفة متماثلة كما يلي:

كثافة العمليات حجم = / * تحديد البعد من مجموعة */;

كثافة العمليات * * صفيف = كثافة العمليات الجديدة * [الحجم];

ل (إنت أنا = 0 ؛ أنا < الحجم ؛ أنا i) {

صفيف [أنا] = كثافة العمليات الجديدة [حجم];

ل (الباحث ي = 0 ؛ ي < الحجم ؛ ي++) {

// ملء عناصر المصفوفة بشكل متماثل بالنسبة للمركز

array[i][j] = /* указать значение элемента массива */;

array[size - i - 1][size - j - 1] = array[i][j];

}

}

// Вывод массива на экран

for (int i = 0; i < size; i++) {

for (int j = 0; j < size; j++) {

std::cout << array[i][j] << " ";

}

std::cout << std::endl;

}

// Освобождение памяти

for (int i = 0; i < size; i++) {

delete[] array[i];

}

delete[] array;

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

سؤال وجواب

كيف يمكنني إنشاء مجموعة متناظرة فيما يتعلق مركز?

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

كيف يمكنني إعادة ترتيب عناصر مصفوفة لإنشاء مصفوفة متناظرة بالنسبة إلى المركز?

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

هل من الممكن إنشاء مصفوفة متماثلة بالنسبة للمركز دون استخدام مؤشرات إضافية?

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

ما هي الطرق الأخرى هناك لإنشاء مجموعة متناظرة بالنسبة للمركز?

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

هل من الممكن إنشاء مصفوفة متماثلة بالنسبة للمركز إذا كان هناك في البداية نصف واحد فقط من المصفوفة?

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

هل من الممكن إنشاء مصفوفة متماثلة بالنسبة للمركز من مصفوفة غير متماثلة?

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