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.

Comments

Popular Posts from this Blog

Shell Script to Create a Simple Calculator - The Coding Shala

N-th Tribonacci Number Solution - The Coding Shala

Java Program to Convert Binary to Decimal - The Coding Shala

LeetCode - Shuffle the Array Solution - The Coding Shala

Java Program to Find GCD or HCF of Two Numbers - The Coding Shala