TGViewer
Swift | LeetCode Swift | LeetCode @easy_swift_task · 1.3K subscribers
Post #969 143
Задача: 392. Is Subsequence
Сложность: easy

Даны две строки s и t. Верните true, если s является подпоследовательностью t, иначе верните false.

Подпоследовательность строки — это новая строка, которая формируется из исходной строки путем удаления некоторых (возможно, ни одного) символов без нарушения относительных позиций оставшихся символов. (например, "ace" является подпоследовательностью "abcde", тогда как "aec" не является).

Пример:
Input: s = "abc", t = "ahbgdc"
Output: true


👨‍💻 Алгоритм:

1⃣Назначьте два указателя: левый для исходной строки и правый для целевой строки. Эти указатели будут использоваться для итерации по строкам и сравнения их символов.

2⃣Перемещайте указатели в зависимости от совпадения символов. Если символы на текущих позициях указателей совпадают, переместите оба указателя на один шаг вперед. Если символы не совпадают, переместите только правый указатель целевой строки.

3⃣Итерация завершается, когда один из указателей выходит за пределы своей строки. Если в конце итерации все символы исходной строки были найдены в целевой строке, исходная строка является подпоследовательностью целевой строки.

😎 Решение:
class Solution {
func isSubsequence(_ s: String, _ t: String) -> Bool {
let leftBound = s.count, rightBound = t.count
var pLeft = 0, pRight = 0

let sArray = Array(s)
let tArray = Array(t)

while pLeft < leftBound && pRight < rightBound {
if sArray[pLeft] == tArray[pRight] {
pLeft += 1
}
pRight += 1
}
return pLeft == leftBound
}
}


Ставь 👍 и забирай 📚 Базу знаний
  • 👍 1
More from @easy_swift_task
  1. Oct 13, 2026Задача: 786. K-th Smallest Prime Fraction Сложность: medium Вам дан отсортированный массив…
  2. Oct 11, 2026Задача: 1325. Delete Leaves With a Given Value Сложность: medium Дано корневое дерево root…
  3. Oct 7, 2026🔥 Скрытые вакансии с удаленной работой для iOS разработчика, которые нигде больше не публ…
  4. Oct 4, 2026Задача: 523. Continuous Subarray Sum Сложность: medium Дан целочисленный массив nums и цел…
  5. Oct 4, 2026Задача: 1329. Sort the Matrix Diagonally Сложность: medium Диагональ матрицы — это диагона…
  6. Oct 3, 2026Задача: 200. Number of Islands Сложность: medium Дана двумерная бинарная сетка размером m…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →