题目

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:

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

Example 2:

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

Example 3:

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

Constraints:

  • 1 <= word1.length, word2.length <= 10^3
  • 1 <= word1[i].length, word2[i].length <= 10^3
  • 1 <= sum(word1[i].length), sum(word2[i].length) <= 10^3
  • word1[i] and word2[i] consist of lowercase letters.

题意

判断两个字符串数组拼接成的字符串是否相等。

思路

直接拼接比较。


代码实现

Java

  1. class Solution {
  2. public boolean arrayStringsAreEqual(String[] word1, String[] word2) {
  3. StringBuilder sb1 = new StringBuilder(), sb2 = new StringBuilder();
  4. for (String s : word1) sb1.append(s);
  5. for (String s : word2) sb2.append(s);
  6. return sb1.toString().equals(sb2.toString());
  7. }
  8. }