389. Find the Difference

Difficulty:
Related Topics:
Similar Questions:

Problem

You are given two strings s and t.

String t is generated by random shuffling string s and then add one more letter at a random position.

Return the letter that was added to t.

  Example 1:

Input: s = "abcd", t = "abcde"
Output: "e"
Explanation: 'e' is the letter that was added.

Example 2:

Input: s = "", t = "y"
Output: "y"

  Constraints:

Solution 1

/**
 * @param {string} s
 * @param {string} t
 * @return {character}
 */
var findTheDifference = function(s, t) {
    var num = 0;
    for (var i = 0; i < t.length; i++) {
        num += t[i].charCodeAt(0);
    }
    for (var j = 0; j < s.length; j++) {
        num -= s[j].charCodeAt(0);
    }
    return String.fromCharCode(num);
};

Explain:

nope.

Complexity:

Solution 2

/**
 * @param {string} s
 * @param {string} t
 * @return {character}
 */
var findTheDifference = function(s, t) {
    var num = 0;
    for (var i = 0; i < t.length; i++) {
        num ^= t[i].charCodeAt(0);
    }
    for (var j = 0; j < s.length; j++) {
        num ^= s[j].charCodeAt(0);
    }
    return String.fromCharCode(num);
};

Explain:

nope.

Complexity: