在 JavaScript 中找到已排序陣列中的第一個唯一元素
假設我們有一個像這樣的已排序的字面陣列——
const arr = [2, 2, 3, 3, 3, 5, 5, 6, 7, 8, 9];
我們需要編寫一個 JavaScript 函式,它接受其中一個數組,並返回僅在該陣列中出現一次的第一個數字。
如果陣列中沒有這樣的數字,我們應該返回 false。
對於此陣列,輸出應為 6。
示例
程式碼如下——
const arr = [2, 2, 3, 3, 3, 5, 5, 6, 7, 8, 9]; const firstNonDuplicate = 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(firstNonDuplicate(arr));
輸出
下面是控制檯上的輸出——
6
廣告