Em đang năm tìm hiểu về thuật toán tìm phần từ trong mảng không có cặp với các phần tử khác. Ví dụ có mảng a[0,0,2,1,3,2,1] thì output sẽ là 3. Tuy nhiên em chưa hiểu về thuật toán này trong Javascript lắm nên nhờ mọi người giải thích hộ em với ạ?
var a = [0,0,2,1,3,2,1];
function getUpaired(arr) {
var obj = {};
for (var i = 0; i < arr.length; i++) {
if (typeof obj[arr[i]] !== 'undefined') {
delete obj[arr[i]];
continue;
}
obj[arr[i]] = i;
}
return Number(Object.keys(obj)[0]);
}
getUpaired([0,0,2,1,3,2,1]);
Em cảm ơn!
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?