給定乙個字串str,和乙個字典dict,你需要找出字典裡的哪些單詞是字串的子串行,返回這些單詞。
樣例
example 1
:input:
str=
"bcogtadsjofisdhklasdj"
dict=
["book"
,"code"
,"tag"
]output:
["book"
]explanation:only book is a subsequence of str
example 2
:input:
str=
"nmownhiterer"
dict=
["nowhere"
,"monitor"
,"moniter"
]output:
["nowhere"
,"moniter"]挑戰
|str|
<=
100000
注意事項
|str|
<=
1000
the sum of all words length in dictionary<=
1000
(all characters are in lowercase)
思路:
1、建立乙個index陣列記錄dict中已經判定相同的位置
2、遍歷str,如果str字元與dict[i]中某個目前需判斷字元相同,則index[i]加一後移。
3、如果index[i]和dict[i]的長度相同,說明dict[i]存在str中。
注意:不可判定兩者index[i]和dict[i]的長度相同則將dict[i]儲存到結果中,因為題目要求按照原字典順序儲存
class
solution
}for
(int i =
0; i < len; i++
)return res;}}
;
LintCode 單詞切分
給出乙個字串s和乙個詞典,判斷字串s是否可以被空格切分成乙個或多個出現在字典中的單詞。給出s lintcode dict lint code 返回 true 因為 lintcode 可以被空格切分成 lint code 動態規劃。第一種 dp i 表示前i個字元能否被切分。前i個字元能否被切分依賴於...
單詞搜尋 LintCode
給出乙個二維的字母板和乙個單詞,尋找字母板網格中是否存在這個單詞。單詞可以由按順序的相鄰單元的字母組成,其中相鄰單元指的是水平或者垂直方向相鄰。每個單元中的字母最多只能使用一次。樣例 給出board abce sfcs adee word abcced 返回 true,word see 返回 tru...
lintcode 最長單詞
引用塊內容 給乙個詞典,找出其中所有最長的單詞。在詞典 中,最長的單詞集合為 internationalization 在詞典 中,最長的單詞集合為 like love hate 挑戰 遍歷兩次的辦法很容易想到,如果只遍歷一次你有沒有什麼好辦法?只把最長的放在陣列中就行了 class solutio...