Question

Formatted question description: https://leetcode.ca/all/1662.html

 1662. Check If Two String Arrays are Equivalent

 Given two string arrays word1 and word2, return true if the two arrays represent the same string, and false otherwise.

 A string is represented by an array if the array elements concatenated in order forms the string.


 Example 1:

 Input: word1 = ["ab", "c"], word2 = ["a", "bc"]
 Output: true
 Explanation:
     word1 represents string "ab" + "c" -> "abc"
     word2 represents string "a" + "bc" -> "abc"
     The strings are the same, so return true.


 Example 2:

 Input: word1 = ["a", "cb"], word2 = ["ab", "c"]
 Output: false


 Example 3:

 Input: word1  = ["abc", "d", "defg"], word2 = ["abcddefg"]
 Output: true


 Constraints:
     1 <= word1.length, word2.length <= 103
     1 <= word1[i].length, word2[i].length <= 103
     1 <= sum(word1[i].length), sum(word2[i].length) <= 103
     word1[i] and word2[i] consist of lowercase letters.

Algorithm

  1. Combine with strings in a list as one string
  2. Compare two strings

Code

Java

public class Check_If_Two_String_Arrays_are_Equivalent {

    class Solution {
        public boolean arrayStringsAreEqual(String[] word1, String[] word2) {
            String str1 = "";
            String str2 = "";

            for(String str: word1) str1 += str;
            for(String str: word2) str2 += str;

            return str1.equals(str2);
        }
    }
}

Java

class Solution {
    public boolean arrayStringsAreEqual(String[] word1, String[] word2) {
        StringBuffer sb1 = new StringBuffer();
        StringBuffer sb2 = new StringBuffer();
        int length1 = word1.length, length2 = word2.length;
        for (int i = 0; i < length1; i++)
            sb1.append(word1[i]);
        for (int i = 0; i < length2; i++)
            sb2.append(word2[i]);
        String str1 = sb1.toString();
        String str2 = sb2.toString();
        return str1.equals(str2);
    }
}

All Problems

All Solutions