v1
8/3/2021 by nikkypizza -00
Setup HTML - click to add setup HTML
disable setup JavaScript
Setup JavaScript
const arr = [4,1,2,1,2];

const singleNumberSet = (nums) => {
  let mySet = new Set();
  for (let i = 0; i < nums.length; i++) mySet.has(nums[i]) ? mySet.delete(nums[i]) : mySet.add(nums[i])
  return Array.from(mySet)[0];
};

const singleNumberXOR = (nums) => {
  let result = 0;
  nums.forEach(it => result ^= it);
  return result;
};

var singleNumberObj = (nums) => {
  const occurencies = {};

  nums.forEach(it => occurencies[it] ? occurencies[it] += 1 : (occurencies[it] = 1));
  for (let it in occurencies) if (occurencies[it] === 1) return it;
  return -1;
};
delete caserun single casemove downdrag and drop case


ready



singleNumberSet(arr)
delete caserun single casemove upmove downdrag and drop case


ready



singleNumberXOR(arr)
delete caserun single casemove updrag and drop case


ready



singleNumberObj(arr)
Test Case - click to add another test case
Teardown JS - click to add teardown JavaScript
Output (DOM) - click to monitor output (DOM) while test is running
RUN