เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์ของตัวเลขเป็นอินพุตเดียวเท่านั้น อาร์เรย์อินพุตอาจมีรายการที่ซ้ำกัน
ฟังก์ชันของเราควรจัดเรียงอาร์เรย์และจัดกลุ่มตัวเลขที่เหมือนกัน (ซ้ำกัน) ทั้งหมดลงในอาร์เรย์ย่อยที่แยกจากกัน
ตัวอย่างเช่น −
หากอาร์เรย์อินพุตเป็น −
const arr = [5, 7, 5, 7, 8, 9, 1, 1];
จากนั้นผลลัพธ์ควรเป็น −
const output = [ [1, 1], [5, 5], [7, 7], [8], [9] ];
ตัวอย่าง
รหัสสำหรับสิ่งนี้จะเป็น −
const arr = [5, 7, 5, 7, 8, 9, 1, 1];
const sortAndGroup = (arr = []) => {
let result = [];
let groupArray;
arr.sort((a, b) => a - b);
for (let i = 0; i < arr.length; i++) {
if (arr[i − 1] !== arr[i]) {
groupArray = [];
result.push(groupArray);
};
groupArray.push(arr[i]);
};
return result;
};
console.log(sortAndGroup(arr)); ผลลัพธ์
และผลลัพธ์ในคอนโซลจะเป็น −
[ [ 1, 1 ], [ 5, 5 ], [ 7, 7 ], [ 8 ], [ 9 ] ]