CodingMan.cc

Code Your True Nature

題目在此 75. Sort Colors

給定一個只包含 012 的陣列,請將陣列中的元素原地排序,使得相同的元素相鄰,且按照 012 的順序排列。你必須在不使用內建排序函式的情況下完成此任務。

題目在此 10. Regular Expression Matching

給定一個字串 s 與一個模式字串 p,請實作一個函式來判斷 s 是否符合 p 的模式。模式字串 p 可以包含以下兩種特殊字元:

  • .:匹配任意單一字元。
  • *:匹配零個或多個前一個字元。

例如:

  • s = "aa", p = "a",會回傳 false,因為 a 無法匹配整個字串 aa
  • s = "aa", p = "a*",會回傳 true,因為 a* 可以匹配 aaa 出現兩次)。
  • s = "ab", p = ".*",會回傳 true,因為 .* 可以匹配任意字串。

題目在此 3468. Find the Number of Copy Arrays

給定一個整數陣列 numsbounds, 其中 $bounds[i] = [lower_i, upper_i]$,請找出有多少個不同的整數陣列 original 可以經過某個整數 k 的加法運算後,變成 nums,且每個 original[i] 都在 bounds[i] 的範圍內。

  1. (copy[i] - copy[i - 1]) == (original[i] - original[i - 1]) for 1 <= i <= n - 1.
  2. lower[i] <= original[i] <= upper[i] for 0 <= i <= n - 1.

題目在此 31. Next Permutation

給定一個整數陣列 nums,請找出其下一個排列方式。排列方式是指將陣列中的數字重新排列成字典序中下一個較大的排列。如果不存在較大的排列,則將陣列重新排列成字典序中最小的排列(即升冪排列)。

例如:

  • nums = [1,2,3],會回傳 [1,3,2]
  • nums = [3,2,1],會回傳 [1,2,3]
  • nums = [1,1,5],會回傳 [1,5,1]

題目在此 394. Decode String

給定一個編碼過的字串,請將其解碼回原本的字串。編碼規則為 k[encoded_string],表示 encoded_string 會被重複 k 次。
k 是一個正整數,且 encoded_string 只會包含小寫英文字母。你可以假設輸入的字串是有效的,且不會有額外的空白字元,且原始資料不會被重複編碼。

例如:

  • s = "3[a]2[bc]",會回傳 "aaabcbc"
  • s = "3[a2[c]]",會回傳 "accaccacc"

題目在此 21. Merge Two Sorted Lists

給定兩個排序過的鏈結串列,請將它們合併成一個新的排序鏈結串列,並且回傳新的鏈結串列。

0%