سؤال

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

والمصفوفة مع مجموعة تعمل، لكنهم لا يستطيعون الحصول تماما أذهانهم حول هذه الفكرة.

تعديل: مثال من مجموعة متداخلة:

array(
    'array1' => array(
        'key1' => 'val1',
        'key2' => 'val2',
    ),
    'array2' => array(
        'key1' => 'val1',
        'key2' => 'val2',
    ), 
);

وبطبيعة الحال، فإنها عادة ما تكون أكثر تعقيدا من ذلك، وربما هذه هي المشكلة.

هل كانت مفيدة؟

المحلول

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

وربما لدي قائمة ما يجب عمله، قائمة البقالة، ومفضلة في amazon.com. الآن لدي قائمة من جميع القوائم بلدي، وأنا يمكن أن ننظر في كل من تلك العناصر في كل قائمة من التنقل خلال عليها.

نصائح أخرى

وهناك مجموعة متداخلة هي مجموعة ضمن مجموعة. لذلك، وتضم المكتبة مجموعة من الكتب، وهو كتاب يحتوي على مجموعة من الفصول. فصل يحتوي على مجموعة من الفقرات، فقرة لديها مجموعة من الجمل. عقوبة لديها مجموعة من الكلمات.

For each book in library

    For each chapter in book

        For each paragraph in chapter

وغيرها ...

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

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

ورسم عليه.

والمتغير هو مربع و
1 مجموعة الأبعاد هو صف من الصناديق.
2 صفيف الأبعاد هي شبكة من المربعات.
3 مجموعة الأبعاد هو مكعب من الصناديق.

وإذا كانوا قد تواجه مشكلة مع المفهوم العام، لا تحاول شرح بصريا 4 أبعاد.

استخدم صورة نقطية كمثال على ذلك. في C، يمكنك جعل صورة نقطية من X مثل هذا:

int x[5][5] = {
    { 1,0,0,0,1 },
    { 0,1,0,1,0 },
    { 0,0,1,0,0 },
    { 0,1,0,1,0 },
    { 1,0,0,0,1 }
};

وبعد ذلك تبين لهم كيفية استخدام for متداخلة الحلقات لعرض الصورة النقطية.

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

يمكن رياضية توفر القياس المناسبة لوصف تطبيق المصفوفات المتداخلة. فريق هو مجموعة من الناس، والمنافسة هي مجموعة من الفرق التي تلعب ضد بعضها البعض.

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

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

والتفاح - 1، 2، 3-4
الدببة - 32-35، 79، 83
القطط - 14، 15

إذا كنت تبحث في نوع C، غير خشنة، المصفوفات، ومقارنتها إلى أرقام، الجزء الأساس 10، وهناك أرقام قد يساعد. سيكون مصدر جيد آخر لهذا تأثير نفس الوقت يكون لما له من غير 60S قاعدة موحدة = 1M، 60M = 1H، 24H = 1day، إلى 7day = 1week

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

وكانت كل فتحة 2 الأبعاد مجموعة (أي كل مؤشر عقدت مجموعة من بطاقات الملاحظة). لكن الحاوية نفسها كانت مؤشرا ل3 صفيف الأبعاد (أي كل مؤشر عقدت صفيف عقد مجموعة من نوتيكاردس). ثم من هناك نظرية كانت سهلة.

والأمثلة الملموسة هي مفيدة للغاية.

و2 الأبعاد من السهل أن أشرح. مجرد التفكير في الجدول. 3 أبعاد مجرد التفكير مكعب أو غيرها من صورة 3D. 4 أبعاد التفكير في سلسلة من الصور مثل فيلم مع البعد كونها المرة 4TH.

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

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

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

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

وأيضا لماذا لا يمكنك استخدام تجزئة التجزئة، أسهل بكثير مرجع. :)

وخلاصة القول، خطوات طفل.

ومجموعة ليست سوى كائن - شيء. يجب أن يكون كل شيء بسيط لفهم بمجرد الحصول على ذلك

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top