Sobes.tech
Middle+

// findUnique ыкмасы массивге колдонулат жана уникалдуу элементтерден турган жаңы массив кайтарат, // башкача айтканда, оригинал массивде бир гана жолу кездешкендер, ошол эле тартипте. // findUnique ыкмасын ишке ашыруу керек, ал массивдин жөнөкөй ыкмасы катары иштөөсү үчүн [10, 5, 10, 1, 6, 6, 7, 9, 9, 10].findUnique(); // [5, 1, 7]

sobes.tech AI

AIден жооп

Массивге findUnique ыкмасын кошуу үчүн, ал оригинал массивде так бир жолу кездешкен элементтерден турган жаңы массивди кайтарган бул ыкманы кеңейтүү үчүн төмөнкүчө жасай аласыз:

Array.prototype.findUnique = function() {
  const counts = this.reduce((acc, val) => {
    acc[val] = (acc[val] || 0) + 1;
    return acc;
  }, {});

  return this.filter(item => counts[item] === 1);
};

// Колдонуу мисалы:
const arr = [10, 5, 10, 1, 6, 6, 7, 9, 9, 10];
console.log(arr.findUnique()); // [5, 1, 7]

Түшүндүрмө:

  • Алгач counts объектисин түзөбүз, анда ачкычтар массивдин элементтери, маанилери алардын кездешүү саны.
  • Андан соң оригинал массивди фильтрлеп, гана бир жолу кездешкен элементтерди калтырабыз.

Мындайча айтканда, метод нормалдуу массив методу сыяктуу иштейт жана элементтердин тартибин сактайт.