close

問題描述


來源:LeetCode第1662題

難度:簡單

給你兩個字符串數組word1和word2。如果兩個數組表示的字符串相同,返回true;否則,返回false。

數組表示的字符串是由數組中的所有元素按順序連接形成的字符串。

示例 1:

輸入:word1 = ["ab", "c"],

word2 = ["a", "bc"]

輸出:true

解釋:

word1 表示的字符串為 "ab" + "c" -> "abc"

word2 表示的字符串為 "a" + "bc" -> "abc"

兩個字符串相同,返回 true

示例 2:

輸入:word1 = ["a", "cb"],

word2 = ["ab", "c"]

輸出:false

示例 3:

輸入:

word1 = ["abc", "d", "defg"],

word2 = ["abcddefg"]

輸出:true

提示:

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]和word2[i]由小寫字母組成


問題分析


這又是一道簡單的題,題中說了判斷兩個數組拼接的字符串是否相等。最簡單的一種方式就是把每個數組中的字符串分別拼接在一起,最後再判斷這兩個拼接後的字符串是否相等即可,原理非常簡單,直接看下代碼。

publicbooleanarrayStringsAreEqual(String[]word1,String[]word2){StringBuilders1=newStringBuilder();StringBuilders2=newStringBuilder();//拼接word1中的字符串for(inti=0;i<word1.length;i++)s1.append(word1[i]);//拼接word2中的字符串for(inti=0;i<word2.length;i++)s2.append(word2[i]);//比較這兩個拼接之後的字符串是否相等returns1.toString().equals(s2.toString());}

如果對java比較熟悉的話,還可以一行代碼搞定。

publicbooleanarrayStringsAreEqual(String[]word1,String[]word2){returnString.join("",word1).equals(String.join("",word2));}

●615,雙指針解兩數相加

●613,雙指針解三數之和

●597,雙指針解驗證回文字符串 Ⅱ

●539,雙指針解刪除有序數組中的重複項

截止到目前我已經寫了600多道算法題了,為了方便大家閱讀,我把部分算法題整理成了pdf文檔,目前有1000多頁,大家可以在下面公眾號「數據結構和算法」中回復關鍵字「pdf」即可獲取下載鏈接。


你點的每個贊,我都認真當成了喜歡
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 鑽石舞台 的頭像
    鑽石舞台

    鑽石舞台

    鑽石舞台 發表在 痞客邦 留言(0) 人氣()