إذا كنت تعمل مع البرمجة أو تحليل البيانات ، فمن المحتمل أنك واجهت مهمة تحديد عناصر معينة من مصفوفة. المصفوفات هي واحدة من هياكل البيانات الرئيسية في البرمجة وتستخدم على نطاق واسع لتخزين وإدارة كميات كبيرة من المعلومات.
عندما تحتوي المصفوفة على عدد كبير من العناصر ، فمن المستحسن تحديد العناصر الضرورية فقط. على سبيل المثال ، قد تكون مهتما بالعناصر التي تفي بشرط معين أو تفي بمعيار معين.
في هذه المقالة ، سننظر في طرق مختلفة لاختيار العناصر المناسبة من مصفوفة ، بدءا من أبسط الطرق وأكثرها شيوعا وتنتهي بطرق أكثر تعقيدا. سوف تتعلم عن طرق مثل التصفية الشرطية والفرز والبحث.
- معايير اختيار عناصر الصفيف
- نوع العناصر
- معنى العناصر
- اختيار عنصر واحد
- اختيار عناصر متعددة
- اختيار العناصر حسب الشرط
- تحديد العناصر في الجدول
- فهرس العناصر
- طول العناصر
- تفرد العناصر
- التفاعل مع العناصر الأخرى
- 1. باستخدام الدورة
- 2. استخدام المصطلحات
- 3. باستخدام طرق الصفيف
- فرز العناصر
- سؤال وجواب
- كيف يمكنني تحديد كافة العناصر من مجموعة?
- كيف يمكنني تحديد عناصر فريدة فقط من مجموعة?
- كيف يمكنني تحديد العناصر من مجموعة التي تلبي شرط معين?
معايير اختيار عناصر الصفيف
عند اختيار العناصر المناسبة من صفيف ، يجب مراعاة معايير مختلفة. في هذا القسم ، سننظر في المعايير الرئيسية لاختيار العناصر.
.
).
).
).
معايير أخرى-في كل حالة محددة ، قد تكون هناك معايير فريدة لاختيار عناصر الصفيف ، اعتمادا على المهمة. على سبيل المثال ، يمكنك تحديد جميع العناصر التي تحتوي على حقل معين يحتوي على قيمة معينة. للقيام بذلك ، تحتاج إلى فهم بنية وميزات مجموعة معينة وعناصرها.
عند اختيار العناصر المناسبة من المصفوفة ، من المهم أن تأخذ في الاعتبار المتطلبات والأهداف المحددة لمشروعك. بناء على المعايير المحددة ، يمكنك إنشاء خوارزميات قوية تعالج البيانات وتحللها من المصفوفات.
نوع العناصر
عند العمل مع المصفوفات ، من المهم مراعاة أنواع العناصر داخل المصفوفة. في جافا سكريبت ، يمكن أن تكون أنواع العناصر مختلفة: الأرقام والسلاسل والكائنات والقيم المنطقية وغيرها.
عند اختيار العناصر المناسبة من صفيف ، يجب أن يؤخذ نوعها في الاعتبار ، حيث يمكن أن تتصرف العمليات والمقارنات بشكل مختلف اعتمادا على نوع البيانات.
على سبيل المثال ، إذا كانت المصفوفة تحتوي على أرقام ، فيمكنك إجراء عمليات حسابية على عناصر المصفوفة ، مثل الجمع والطرح والضرب والقسمة.
إذا كان الصفيف يحتوي على سلاسل ، فيمكنك إجراء تسلسل سلسلة واستخراج سلسلة فرعية وعمليات أخرى خاصة بالسلسلة.
إذا كانت المصفوفة تحتوي على كائنات ، فيمكنك الوصول إلى خصائص وطرق الكائنات التي تسمح لك بإجراء عمليات إضافية باستخدام البيانات.
عند العمل مع صفائف القيم المنطقية ، يمكنك استخدام عوامل تشغيل التعبير الشرطي مثل "و" أو "أو" و "لا" لتصفية وتحديد عناصر المصفوفة المناسبة.
من المهم أن تتذكر أنه عند العمل مع أنواع مختلفة من البيانات ، يجب أن تأخذ في الاعتبار ميزاتها وإجراء العمليات المناسبة مع عناصر المصفوفة من أجل الحصول على النتائج المرجوة.
معنى العناصر
عندما نعمل مع المصفوفات ، قد نحتاج إلى تحديد عناصر معينة منها. في هذا القسم ، سننظر في كيفية القيام بذلك.
اختيار عنصر واحد
إذا احتجنا إلى تحديد عنصر واحد فقط من المصفوفة ، فيمكننا استخدام فهرس هذا العنصر. تبدأ الفهرسة في المصفوفات من 0 ، أي أن العنصر الأول يحتوي على فهرس 0 ، والثاني يحتوي على فهرس 1 ، وهكذا.
على سبيل المثال ، لدينا مصفوفة بأسماء الألوان:
كونست الألوان = ['الأحمر' ، 'الأصفر' ، 'الأخضر' ، 'الأزرق'];إذا أردنا تحديد العنصر الثاني (الأصفر) ، فيمكننا القيام بذلك على النحو التالي:
كونست سيكوندكولور = الألوان [1] ؛ / / 'الأصفر'.
اختيار عناصر متعددة
.
على سبيل المثال ، لدينا مجموعة مع درجات الطلاب:
درجات كونست = [5, 2, 4, 3, 5, 4];:
درجات عالية = درجات . تصفية (الصف = > الصف > 3); // [5, 4, 5, 4]يحتوي على مجموعة تحتوي على عشرات فقط فوق 3.
اختيار العناصر حسب الشرط
.
على سبيل المثال ، لدينا مجموعة مع المنتجات:
كونست المنتجات = [{الاسم: 'أبل' ، السعر: 10} ، { الاسم: 'الكمثرى' ، السعر: 15} ، {الاسم: 'البرتقال' ، السعر: 12 }];:
كونست رخيصةالمنتجات = المنتجات.مرشح (المنتج = > المنتج.السعر < 15) ؛ / / [{الاسم: 'أبل' ، السعر: 10} ، { الاسم: 'أورانج' ، السعر: 12 }]يحتوي على صفيف يحتوي فقط على منتجات بسعر أقل من 15.
تحديد العناصر في الجدول
إذا كانت صفيفتنا عبارة عن جدول يحتوي على بيانات ، فيمكننا تحديد العناصر حسب الصفوف أو الأعمدة.
على سبيل المثال ، لدينا مصفوفة تمثل جدولا بدرجات الطلاب:
درجة ثابتة = [
[5, 2, 4, 3],
[5, 4, 3, 5],
[4, 5, 5, 4]
];
يمكننا اختيار جميع درجات الطالب الأول بالرجوع إلى صفه:
كونست أولاالطالبالدرجات = درجاتابل[0]; // [5, 2, 4, 3]يحتوي على صفيف مع درجات الطالب الأول.
يمكننا أيضا تحديد درجة طالب معين وموضوع معين من خلال الإشارة إلى عناصر معينة من المصفوفة:
كونست ستدينتجريد = غراديستابل[1][2]; // 3يحتوي على القيمة 3-درجة الطالب الثاني في المادة الثالثة.
فهرس العناصر
فهرس عنصر في المصفوفة هو رقمه الترتيبي. يتم حساب الفهارس في المصفوفات في جافا سكريبت من 0. أي أن العنصر الأول يحتوي على فهرس 0 ، والعنصر الثاني يحتوي على فهرس 1 ، وما إلى ذلك.
.
.
يمكن أن تكون الفهارس إيجابية وسلبية. الفهرس -1 يتوافق مع العنصر الأخير من المصفوفة ، -2 يتوافق مع ما قبل الأخير ، إلخ.
يجب أن تكون حذرا عند استخدام الفهارس السلبية ، لأن محاولة الوصول إلى فهرس غير موجود سيؤدي إلى حدوث خطأ.
، والتي يمكن استخدامها أيضا عند التكرار من خلال مصفوفة.
. يمكن لكل تكرار للحلقة الوصول إلى عنصر صفيف حسب الفهرس.
، والتي تسمح لك بالعثور على فهرس عنصر من خلال قيمته.
لاستبعاد أو تضمين عناصر الصفيف من خلال فهارسها.
إن معرفة وفهم كيفية العمل مع فهارس عناصر المصفوفة أمر مهم للعمل الفعال مع المصفوفات في جافا سكريبت.
طول العناصر
عندما نحتاج إلى تحديد عناصر من مصفوفة ، فإننا غالبا ما نواجه الحاجة إلى مراعاة طولها. يمكن تحديد طول عنصر المصفوفة بطرق مختلفة.
أولا ، لنلق نظرة على طول عنصر المصفوفة. طول العنصر هو عدد الأحرف الموجودة في عنصر معين من المصفوفة. يمكن أن يكون مفيدا عندما نريد تصفية العناصر حسب طولها أو إجراء عمليات مقارنة أخرى.
، تحتوي على أسماء الفواكه المختلفة:
الفواكه فار = ['التفاح' ، 'الموز' ، 'البرتقال' ، 'الكمثرى'];
طول فار = الفواكه [0].الطول;
وحدة التحكم.سجل (طول) ؛ / / النواتج 6
. يقوم بإرجاع عدد الأحرف في السلسلة "تفاحة" ، وهو 6.
.
للحصول على طوله.:
الفواكه فار = ['التفاح' ، 'الموز' ، 'البرتقال' ، 'الكمثرى'];
طول فار = الفواكه [0].توسترينج ().الطول;
وحدة التحكم.سجل (طول) ؛ / / النواتج 6
لتحديد طول عنصر صفيف. هذا يسمح لنا بالعمل بمرونة أكبر مع العناصر واختيار العناصر المناسبة حسب طولها.
تفرد العناصر
في بعض الحالات ، قد يكون من الضروري تحديد عناصر فريدة فقط من المصفوفة. تفرد عنصر يعني أنه يحدث مرة واحدة فقط في المصفوفة.
هناك عدة طرق لتحديد عناصر فريدة من مصفوفة:
- باستخدام حلقة والتحقق من كل عنصر للتفرد. للقيام بذلك ، يمكنك إنشاء مصفوفة جديدة والتأكد من إضافة كل عنصر إليها مرة واحدة فقط.
- . تقوم هذه الوظيفة بإنشاء مصفوفة جديدة من المصفوفة الأصلية ، وتخطي العناصر المكررة.
- يخزن القيم الفريدة فقط ، بحيث يمكنك استخدامها لإنشاء مصفوفة بعناصر فريدة فقط.
:
دعونا مجموعة = [1, 2, 3, 4, 3, 2, 1];
السماح فريدة من نوعهاأراي = صفيف.من (مجموعة جديدة (صفيف));
وحدة التحكم.سجل (فريد); // [1, 2, 3, 4]
. ستكون النتيجة مصفوفة تحتوي على عناصر فريدة فقط.
يمكن أن يكون تحديد عناصر فريدة من صفيف مفيدا عند العمل بكمية كبيرة من البيانات أو عند معالجة البيانات على الخادم. هذا يساعد على تبسيط منطق البرنامج وتحسين أدائه.
التفاعل مع العناصر الأخرى
عندما نختار عناصر من مصفوفة ، نحتاج أحيانا أيضا إلى التفاعل مع عناصر أخرى. دعونا نلقي نظرة على بعض الطرق التي ستساعدنا على القيام بذلك.
1. باستخدام الدورة
للتكرار من خلال جميع العناصر وتنفيذ إجراءات معينة مع كل عنصر.
// مثال
دع الأرقام = [1, 2, 3, 4, 5];
ل (اسمحوا لي = 0; أنا < أرقام.الطول ؛ أنا {) {
وحدة التحكم.سجل (أرقام [أنا] * 2);
}
// الإخراج: 2, 4, 6, 8, 10
2. استخدام المصطلحات
للقيام بذلك.
// مثال
دع الأرقام = [1, 2, 3, 4, 5];
ل (اسمحوا لي = 0; أنا < أرقام.الطول ؛ أنا {) {
إذا (أرقام [أنا] % 2 = = = 0) {
وحدة التحكم.سجل (أرقام [أنا]);
}
}
// الإخراج: 2 ، 4
3. باستخدام طرق الصفيف
لإنشاء مصفوفة جديدة تحتوي فقط على العناصر التي تفي بشرط معين.
// مثال
دع الأرقام = [1, 2, 3, 4, 5];
دع حتىأرقام = أرقام.مرشح(وظيفة (رقم) {
رقم الإرجاع % 2 = = = 0;
});
وحدة التحكم.سجل (حتى الأرقام);
// الإخراج: [2 ، 4]
يسمح لنا التفاعل مع العناصر الأخرى في المصفوفة بإجراء عمليات ومعالجة مختلفة بالبيانات. سواء كان الأمر يتعلق ببساطة بضرب كل عنصر برقم معين أو تصفية العناصر التي تتطابق مع شرط معين ، فإن القدرة على التفاعل مع العناصر الأخرى في المصفوفة تساعدنا في إنشاء كود أكثر مرونة ووظيفية.
فرز العناصر
بعد تحديد العناصر المناسبة من المصفوفة ، قد ترغب في فرزها حسب معيار معين. يتيح لك فرز العناصر تنظيم البيانات بترتيب معين ، مما قد يكون مفيدا لتحليل المعلومات أو تقديمها.
هناك عدة طرق لفرز العناصر:
- الفرز التصاعدي-سيتم ترتيب عناصر المصفوفة بالترتيب من الأصغر إلى الأكبر قيمة.
- الفرز بترتيب تنازلي-سيتم ترتيب عناصر المصفوفة بالترتيب من الأعلى إلى الأقل قيمة.
- الفرز الأبجدي-سيتم ترتيب عناصر المصفوفة بالترتيب الأبجدي.
. تقوم هذه الطريقة بتعديل المصفوفة الأصلية عن طريق ترتيب العناصر بالترتيب الصحيح. يمكن أن يقبل وظيفة المقارنة التي تسمح لك بتحديد معيار الفرز.
على سبيل المثال ، لفرز مجموعة من الأرقام بترتيب تصاعدي ، يمكنك استخدام الكود التالي:
"'جافا سكريبت
أرقام كونست = [5, 2, 8, 1, 4];
أرقام.فرز ((أ ، ب) = > أ-ب);
"`
.
في وظيفة المقارنة:
"'جافا سكريبت
أرقام كونست = [5, 2, 8, 1, 4];
أرقام.فرز ((أ ، ب) = > ب-أ);
«`
.
لفرز مصفوفة من السلاسل أبجديا ، يتم استخدام الطريقة بدون وسيطات:
"'جافا سكريبت
أسماء كونست = ['أليس' ، 'بوب' ، 'تشارلي' ، 'ديفيد'];
الأسماء.فرز();
"`
، حيث يتم فرز السلاسل حسب معناها المعجمي.
سؤال وجواب
كيف يمكنني تحديد كافة العناصر من مجموعة?
لتحديد جميع العناصر من المصفوفة ، يكفي المرور عبر المصفوفة بأكملها باستخدام حلقة والوصول إلى كل عنصر. على سبيل المثال ، في لغة برمجة بايثون ، يمكنك استخدام حلقة:
كيف يمكنني تحديد عناصر فريدة فقط من مجموعة?
يمكنك استخدام طرق مختلفة لتحديد عناصر فريدة فقط من صفيف. في لغة برمجة بايثون ، على سبيل المثال ، يمكنك استخدام نوع البيانات المحدد ، والذي يزيل القيم المكررة تلقائيا. يمكنك أيضا استخدام حلقة للتكرار من خلال المصفوفة والتحقق من وجود عنصر في مصفوفة القيم الفريدة.
كيف يمكنني تحديد العناصر من مجموعة التي تلبي شرط معين?
يمكن اختيار العناصر من المصفوفة التي تفي بشرط معين باستخدام عامل تشغيل شرطي. على سبيل المثال ، في لغة برمجة بايثون ، يمكنك استخدام تعبير قائمة لتحديد العناصر التي تفي بشرط معين.