إليك ترجمة النص إلى العربية مع الحفاظ على جميع علامات HTML وعدم تغيير أي كود برمجي: وظيفة عامة لدمج المصفوفات مع مقارن مخصص
TypeScript
Medium
generics
مهمة «إليك ترجمة النص إلى العربية مع الحفاظ على جميع علامات HTML وعدم تغيير أي كود برمجي: وظيفة عامة لدمج المصفوفات مع مقارن مخصص»
نفذ دالة عامة `mergeArrays<T>` تأخذ مصفوفتين من العناصر من النوع `T` ودالة مقارنة `comparator: (a: T, b: T) => number`. يجب أن تُرجع الدالة مصفوفة جديدة تحتوي على جميع العناصر من كلا المصفوفتين، مرتبة ترتيبًا تصاعديًا وفقًا للمقارنة. يجب ألا يتم تعديل المصفوفتين الأصليتين. إذا أعادت المقارنة رقمًا سالبًا، فإن `a` تُعتبر أصغر؛ وإذا أعادت رقمًا موجبًا، فإن `b` هي الأصغر؛ وإذا أعادت صفرًا، فإنهما متساويان. في حالة التساوي، الترتيب غير مهم. القيود: أطوال المصفوفات من 1 إلى 10^5، ويمكن أن تكون العناصر من أي نوع.
تنسيق الإدخال
السطر الأول هو طول المصفوفة الأولى N. السطر الثاني هو N عنصرًا مفصولة بمسافات. السطر الثالث هو طول المصفوفة الثانية M. السطر الرابع هو M عنصرًا مفصولة بمسافات. السطر الخامس هو سلسلة تحتوي على المقارن: 'number' للأرقام (مقارنة تصاعدية)، 'string' للسلاسل النصية (مقارنة معجمية).
تنسيق الإخراج
سلسلة تحتوي على عناصر المصفوفة الناتجة، مفصولة بمسافة.
أمثلة
مثال 1
الإدخال
5
3 1 4 1 5
الإخراج
1 1 3 4 5
main.ts