ধরুন, আমাদের দুটি অ্যারে আছে, ধরা যাক arr1 এবং arr2। arr2-এর উপাদানগুলি স্বতন্ত্র, এবং arr2-এর সমস্ত উপাদানগুলিও arr1-এ রয়েছে।
আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা এই ধরনের দুটি অ্যারে নেয় এবং arr1-এর উপাদানগুলিকে সাজায় যাতে arr1-এ আইটেমগুলির আপেক্ষিক ক্রম arr2-এর মতোই হয়। যে উপাদানগুলি arr2-তে প্রদর্শিত হয় না তা শেষে স্থাপন করা উচিত। আরোহী ক্রমে arr1।
যেমন- যদি দুটি ইনপুট অ্যারে −
হয়const arr1 = [2,3,1,3,2,4,6,7,9,2,19]; const arr2 = [2,1,4,3,9,6];
তারপর আউটপুট −
হওয়া উচিতconst output = [2,2,2,1,4,3,3,9,6,7,19];
উদাহরণ
const arr1 = [2,3,1,3,2,4,6,7,9,2,19]; const arr2 = [2,1,4,3,9,6]; const relativeSortArray = (arr1, arr2) => { const map = new Map(); const len = arr2.length; arr2.forEach((a, i) => { map.set(a, i); }); return arr1.sort((a, b) => { a = map.has(a) ? map.get(a) : len + a; b = map.has(b) ? map.get(b) : len + b; return a - b; }); }; console.log(relativeSortArray(arr1, arr2));
আউটপুট
এবং কনসোলে আউটপুট হবে −
[ 2, 2, 2, 1, 4, 3, 3, 9, 6, 7, 19 ]