子序列意思

在數學和計算機科學中,特別是字元串和序列處理領域,子序列(Subsequence)是一個序列,它是另一個序列的元素的一個排列,但是可以缺少一些元素。簡單來說,一個序列的子序列是在原始序列中刪除任意數量的連續元素(可以刪除0個或多個)後得到的序列。

例如,考慮序列 "ABCD",它的子序列包括:

  1. ABCD(不刪除任何元素)
  2. ABC(刪除最後一個元素)
  3. AB(刪除最後兩個元素)
  4. AC(刪除最後一個元素)
  5. A(刪除所有元素)
  6. 空序列(刪除所有元素)

注意,"BAC" 不是 "ABCD" 的子序列,因為元素 "A" 和 "C" 之間有一個 "B",但子序列 "BAC" 中的 "B" 後面沒有 "C"。

在字元串中,子序列的概念與子字元串(Substring)不同。子字元串是在原始字元串中刪除任意數量的連續字元(可以刪除0個或多個)後得到的字元串,但是子字元串必須包含原始字元串中的連續字元。例如,"ABCD" 的子字元串包括 "ABCD"、"ABC"、"AB"、"AC"、"AD"、"BC"、"BD"、"CD"、"B"、"C"、"D" 和空字元串。