leetcode 135 判斷子串行

2021-10-04 02:55:08 字數 1405 閱讀 3099

難度簡單135

給定字串st,判斷s是否為t的子串行。

你可以認為st中僅包含英文小寫字母。字串t可能會很長(長度 ~= 500,000),而s是個短字串(長度 <=100)。

字串的乙個子串行是原始字串刪除一些(也可以不刪除)字元而不改變剩餘字元相對位置形成的新字串。(例如,"ace""abcde"的乙個子串行,而"aec"不是)。

示例 1:

s="abc",t="ahbgdc"

返回true.

示例 2:

s="axc",t="ahbgdc"

返回false.

class solution:

def issubsequence(self, s: str, t: str) -> bool:

# 判斷 s 是否為 t 的子串行。

# 指標 point_s 指向 s 第乙個字元,指標 point_t 指向 t 第乙個字元。逐一判斷 point_s 所指向的字元是否在 t 中存在。

point_s = 0

point_t = 0

length_s = len(s)

length_t = len(t)

'''1、如果 s[point_s] != t[point_t] , point_t = point_t + 1, 繼續對比t的下乙個字元,s的第point_s個字元是否在t中

2、如果 s[point_s] == t[point_t] , point_s = point_s + 1 , point_t = point_t + 1, 繼續對比s的下乙個字元。

''' while point_s < length_s and point_t < length_t:

if s[point_s] == t[point_t]:

point_s = point_s + 1

point_t = point_t + 1

# 最後通過point_s是否與length_s相等判斷s 是否為 t 的子串行。

return point_s == length_s

LeetCode 135 分發糖果

老師想給孩子們分發糖果,有 n 個孩子站成了一條直線,老師會根據每個孩子的表現,預先給他們評分。你需要按照以下要求,幫助老師給這些孩子分發糖果 每個孩子至少分配到 1 個糖果。相鄰的孩子中,評分高的孩子必須獲得更多的糖果。那麼這樣下來,老師至少需要準備多少顆糖果呢?示例 1 輸入 1,0,2 輸出 ...

leetcode135 分發糖果

一道很有意思的題目,難度級別為 困難。題目是這樣的的 老師想給孩子們分發糖果,有 n 個孩子站成了一條直線,老師會根據每個孩子的表現,預先給他們評分。你需要按照以下要求,幫助老師給這些孩子分發糖果 每個孩子至少分配到 1 個糖果。相鄰的孩子中,評分高的孩子必須獲得更多的糖果。那麼這樣下來,老師至少需...

leetcode135 分發糖果

老師想給孩子們分發糖果,有 n 個孩子站成了一條直線,老師會根據每個孩子的表現,預先給他們評分。你需要按照以下要求,幫助老師給這些孩子分發糖果 每個孩子至少分配到 1 個糖果。相鄰的孩子中,評分高的孩子必須獲得更多的糖果。那麼這樣下來,老師至少需要準備多少顆糖果呢?示例 1 輸入 1,0,2 輸出 ...