leetcode題目 389 找不同

2021-10-03 06:00:15 字數 925 閱讀 9827

給定兩個字串 s 和 t,它們只包含小寫字母。

字串 t 由字串 s 隨機重排,然後在隨機位置新增乙個字母。

請找出在 t 中被新增的字母。

輸入:s = 「abcd」

t = 「abcde」

輸出:e

解釋:『e』 是那個被新增的字母。

先用hashmap統計t(t為較長的那個字串)的字母頻率,然後再遍歷s的字母,遇到乙個字母則把hashmap對應字母的頻率減一,最後剩下的那個就是答案。

public

class

problem389

else

}for

(int i=

0;ilength()

;i++

)return hashmap.

keyset()

.iterator()

.next()

;}public

static

void

main

(string[

] args)

}

a^0=a

a^a=0

(a^b)^c=a^(b^c)

在所有字母中,除了結果外的那個字母,其餘字母一定是成對的,所有把所有字母都進行異或,最後的結果就是答案。

public

class

problem389_2

a=a^t.

charat

(t.length()

-1);

return

(char

)a;}

public

static

void

main

(string[

] args)

}

LeetCode題解 389 找不同

瞧一瞧 求star 給定兩個字串 s 和 t,它們只包含小寫字母。字串 t 由字串 s 隨機重排,然後在隨機位置新增乙個字母。請找出在 t 中被新增的字母。示例 輸入 s abcd t abcde 輸出 e 解釋 e 是那個被新增的字母。思路 var findthedifference functi...

leetCode 389 找不同 簡單

給定兩個字串 s 和 t,它們只包含小寫字母。字串 t 由字串 s 隨機重排,然後在隨機位置新增乙個字母。請找出在 t 中被新增的字母。遍歷s中的字元進行計數,再遍歷t中的字元將對應的字元數量 如果t中乙個字元的數量為0那麼該字元為新增的字元。class solution for int i 0 i...

LeetCode389 找不同 查詢

查詢問題,最先想到map和set 一開始覺得用set即可,因為把s的內容存進去,對t進行遍歷,不在裡面的肯定就是新增加的了 public char findthedifference string s,string t char result for int i 0 i return result ...