Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

จัดเรียงอาร์เรย์และจัดกลุ่มตัวเลข (ซ้ำกัน) ที่เหมือนกันทั้งหมดลงในอาร์เรย์ย่อยที่แยกจากกันใน JavaScript


เราจำเป็นต้องเขียนฟังก์ชัน 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 ] ]