題目

題目連結:https://leetcode.com/problems/substring-with-concatenation-of-all-words/

給定一個字串 s 和一個 words 陣列,words 內包含長度一樣的單詞。
找到所有的子字串的開頭索引值,子字串必須是 words 中的每一個單詞各出現一次的連接字串。

範例說明

Example 1

1
2
3
4
5
6
Input:
s = "barfoothefoobarman",
words = ["foo","bar"]
Output: [0,9]
Explanation: Substrings starting at index 0 and 9 are "barfoo" and "foobar" respectively.
The output order does not matter, returning [9,0] is fine too.

Example 2

1
2
3
4
Input:
s = "wordgoodgoodgoodbestword",
words = ["word","good","best","word"]
Output: []
閱讀全文 »

題目

題目連結:https://leetcode.com/problems/reverse-nodes-in-k-group/

給定一個 Linked List(以下簡稱串列),以每 k 個節點為一段做反轉。

保證 k > 0k <= 串列長度,如果剩下的一段長度不足 k 則不需要反轉。

範例說明

Given this linked list: 1->2->3->4->5

For k = 2, you should return: 2->1->4->3->5

For k = 3, you should return: 3->2->1->4->5

閱讀全文 »

題目

題目連結:https://leetcode.com/problems/regular-expression-matching/

給一個字串 s 和樣板(pattern) p,實作支援 .* 的 regular expression。

1
2
'.' Matches any single character. 匹配一個任一字元。
'*' Matches zero or more of the preceding element. 匹配零到任意多個前一個字元

計算 s 是否匹配 p

範例說明

Example 1:

1
2
3
4
5
Input:
s = "aa"
p = "a"
Output: false
Explanation: "a" does not match the entire string "aa".

Example 2:

1
2
3
4
5
6
7
Input:
s = "aa"
p = "a*"
Output: true
Explanation:
'*' means zero or more of the preceding element, 'a'.
Therefore, by repeating 'a' once, it becomes "aa".
閱讀全文 »

題目

題目連結:https://leetcode.com/problems/freedom-trail/

給定一個環狀的字串 ring,再給一個字串 key,要求利用 ring 在最少步數內拼出字串 key

一開始指標在字串 ring 的第一個字元上,將指標順時鐘或是逆時鐘動一格算是一步。當指標所指的字元等於你要拼的 key 中的字元,你還必須花一步來按下確認按鈕。

範例說明

閱讀全文 »
0%