Mảng đã sắp xếp, tìm số đầu tiên không trùng lặp (xuất hiện 1 lần). Trả về false nếu không có.
Ví dụ: [32,32,63,63,63,75,75,86,87,88,89] → 86.
Mã thực hiện
const arr = [32,32,63,63,63,75,75,86,87,88,89];
const firstUnique = arr => {
let appeared = false;
for (let i = 0; i < arr.length; i++) {
if (appeared) {
if (arr[i+1] !== arr[i]) appeared = false;
} else {
if (arr[i+1] === arr[i]) { appeared = true; continue; }
return arr[i];
}
}
return false;
};
console.log(firstUnique(arr));
Kết quả
86