Bird
Raised Fist0
DSA Javascriptprogramming~10 mins

Find the Only Non Repeating Element Using XOR in DSA Javascript - Interactive Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to initialize the variable that will hold the XOR result.

DSA Javascript
let result = [1];
Drag options to blanks, or click blank then click option'
A0
B1
Cnull
Dundefined
Attempts:
3 left
💡 Hint
Common Mistakes
Initializing with 1 or null causes incorrect results.
2fill in blank
medium

Complete the for loop to iterate over the array elements.

DSA Javascript
for (let i = 0; i [1] arr.length; i++) {
Drag options to blanks, or click blank then click option'
A<
B>
C>=
D<=
Attempts:
3 left
💡 Hint
Common Mistakes
Using <= causes index out of range error.
3fill in blank
hard

Fix the error in the XOR operation inside the loop.

DSA Javascript
result = result [1] arr[i];
Drag options to blanks, or click blank then click option'
A&
B+
C-
D^
Attempts:
3 left
💡 Hint
Common Mistakes
Using + or & instead of ^ causes wrong results.
4fill in blank
hard

Fill both blanks to complete the function that returns the unique element.

DSA Javascript
function findUnique(arr) {
  let result = [1];
  for (let i = 0; i [2] arr.length; i++) {
    result = result ^ arr[i];
  }
  return result;
}
Drag options to blanks, or click blank then click option'
A0
B<
C<=
D1
Attempts:
3 left
💡 Hint
Common Mistakes
Using 1 for initialization or <= in loop condition.
5fill in blank
hard

Fill all three blanks to create a concise one-liner function that finds the unique element.

DSA Javascript
const findUnique = arr => arr.reduce(([1], [2]) => [1] ^ [2], 0);
Drag options to blanks, or click blank then click option'
Aacc
Bcurr
Dval
Attempts:
3 left
💡 Hint
Common Mistakes
Using incorrect parameter names or missing initial value 0.

Practice

(1/5)
1. What does the XOR operation do when applied between two identical numbers?
easy
A. It returns 0
B. It returns the number itself
C. It returns 1
D. It returns the sum of the numbers

Solution

  1. Step 1: Understand XOR property for identical numbers

    XOR of a number with itself always results in 0 because bits cancel out.
  2. Step 2: Apply XOR to example

    For example, 5 ^ 5 = 0 as each bit is the same and cancels.
  3. Final Answer:

    It returns 0 -> Option A
  4. Quick Check:

    X ^ X = 0 [OK]
Hint: XOR same numbers always zeroes out [OK]
Common Mistakes:
  • Thinking XOR returns the number itself
  • Confusing XOR with OR operation
  • Assuming XOR sums numbers
2. Which of the following is the correct syntax to XOR two variables a and b in JavaScript?
easy
A. a && b
B. a ^ b
C. a xor b
D. a | b

Solution

  1. Step 1: Recall JavaScript bitwise XOR operator

    In JavaScript, the XOR operator is represented by the caret symbol ^.
  2. Step 2: Check each option

    a ^ b uses ^ correctly. a xor b uses 'xor' which is not valid syntax. Options A and D are logical AND and bitwise OR respectively.
  3. Final Answer:

    a ^ b -> Option B
  4. Quick Check:

    Use ^ for XOR in JavaScript [OK]
Hint: Use ^ symbol for XOR in JavaScript [OK]
Common Mistakes:
  • Using 'xor' keyword
  • Confusing XOR with && or ||
  • Using | instead of ^
3. What will be the output of the following code?
const arr = [2, 3, 2, 4, 3];
let result = 0;
for (const num of arr) {
  result ^= num;
}
console.log(result);
medium
A. 2
B. 0
C. 4
D. 3

Solution

  1. Step 1: XOR all elements in the array

    Start with result = 0, then XOR with each element: 0 ^ 2 = 2, 2 ^ 3 = 1, 1 ^ 2 = 3, 3 ^ 4 = 7, 7 ^ 3 = 4.
  2. Step 2: Final XOR result is the non-repeating element

    The only element that does not repeat is 4, which is the final XOR result.
  3. Final Answer:

    4 -> Option C
  4. Quick Check:

    Final XOR = 4 [OK]
Hint: XOR all numbers; result is unique element [OK]
Common Mistakes:
  • Not starting XOR from 0
  • XORing incorrectly in loop
  • Assuming sum instead of XOR
4. Identify the error in the following code that tries to find the non-repeating element using XOR:
const arr = [1, 2, 1, 3, 2];
let result;
for (let i = 0; i < arr.length; i++) {
  result ^= arr[i];
}
console.log(result);
medium
A. Variable 'result' is not initialized to 0
B. Loop condition should be i <= arr.length
C. XOR operator is incorrect, should be &&
D. Array should be sorted before XOR

Solution

  1. Step 1: Check initialization of 'result'

    The variable 'result' is declared but not initialized, so it is undefined initially.
  2. Step 2: Effect of uninitialized 'result' on XOR

    XOR with undefined results in NaN, so the final output will be incorrect. Initializing 'result' to 0 fixes this.
  3. Final Answer:

    Variable 'result' is not initialized to 0 -> Option A
  4. Quick Check:

    Initialize result = 0 before XOR loop [OK]
Hint: Always initialize XOR accumulator to 0 [OK]
Common Mistakes:
  • Not initializing XOR variable
  • Using wrong loop condition
  • Misusing XOR operator
5. Given an array where every element appears three times except one element which appears once, can XOR be used directly to find the unique element? Why or why not?
hard
A. Yes, but only if the array length is odd
B. Yes, XOR works for any number of repetitions
C. No, because XOR requires sorted arrays
D. No, because XOR only cancels pairs of identical numbers

Solution

  1. Step 1: Understand XOR behavior with repeated elements

    XOR cancels out pairs of identical numbers because x ^ x = 0.
  2. Step 2: Analyze effect of triply repeated elements

    Elements repeated thrice do not cancel out with XOR because XOR of three identical numbers is the number itself, not zero.
  3. Step 3: Conclusion on XOR usage

    Therefore, XOR alone cannot find the unique element if others repeat thrice; other methods are needed.
  4. Final Answer:

    No, because XOR only cancels pairs of identical numbers -> Option D
  5. Quick Check:

    XOR cancels pairs, not triples [OK]
Hint: XOR cancels pairs only, not triples [OK]
Common Mistakes:
  • Assuming XOR works for any repetition count
  • Thinking sorting helps XOR
  • Confusing XOR with sum or count
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard