Files
obsidian/АиСД/Задачи/LeetCode/Valid Palindrome.md
T
roma-dxunvrs 0e6e583e6d
deploy / Pull and Restart (push) Successful in 17s
refactor: wiki links -> md links
2026-09-22 08:52:23 +03:00

21 lines
737 B
Markdown

Leetcode #125 | #Easy | [Два указателя](../../Методы/Два%20указателя.md)
## Идея
Два указателя навстречу, пропуск всех ненужных символов
## Big-O
- Время ```O(N)```
- Память ```O(1)```
## Код
```Java
class Solution {
public boolean isPalindrome(String s) {
int l = 0, r = s.length() - 1;
while (l < r) {
while (l < r && !Character.isLetterOrDigit(s.charAt(l))) l++;
while (l < r && !Character.isLetterOrDigit(s.charAt(r))) r--;
if (Character.toLowerCase(s.charAt(l)) != Character.toLowerCase(s.charAt(r))) return false;
l++; r--;
}
return true;
}
}
```