Decode XORed Array LeetCode Solution - The Coding Shala

Home >> LeetCode >> Decode XORed Array

 In this post, we will learn how to solve LeetCode's Decode XORed Array Problem and will implement its solution in Java.

Decode XORed Array Problem

There is a hidden integer array arr that consists of n non-negative integers. It was encoded into another integer array encoded of length n - 1, such that encoded[i] = arr[i] XOR arr[i + 1]. For example, if arr = [1,0,2,1], then encoded = [1,2,3]. You are given the encoded array. You are also given an integer first, that is the first element of arr, i.e. arr[0]. 
Return the original array arr. It can be proved that the answer exists and is unique.

Example 1:
Input: encoded = [1,2,3], first = 1
Output: [1,0,2,1]
Explanation: If arr = [1,0,2,1], then first = 1 and encoded = [1 XOR 0, 0 XOR 2, 2 XOR 1] = [1,2,3]

LeetCode - Decode XORed Array Java Solution

Approach 1

For example, a ^ b = c, where c is given, and the first element(a) is also given. If we do a ^ c then we will get b, our second element in the output array.

Java Program: 

class Solution {
    public int[] decode(int[] encoded, int first) {
        int size = encoded.length;
        int[] res = new int[size+1];
        res[0] = first;
        for(int i=0; i<size; i++) {
            res[i+1] = res[i] ^ encoded[i];
        return res;

Other Posts You May Like
Please leave a comment below if you like this post or found some errors, it will help me to improve my content.


Popular Posts from this Blog

Shell Script to find sum, product and average of given numbers - The Coding Shala

Shell Script to Create a Simple Calculator - The Coding Shala

Add two numbers in Scala - The Coding Shala

New Year Chaos Solution - The Coding Shala

Richest Customer Wealth LeetCode Solution - The Coding Shala