Junior — Middle
De que maneiras em Dart se pode verificar se uma string é lida da mesma forma de esquerda para direita e de direita para esquerda?
sobes.tech IA
Resposta da IA
Em Dart, é possível verificar se uma string é um palíndromo (lê-se igual de esquerda para direita e de direita para esquerda) de várias maneiras:
- Comparar a string com a sua cópia invertida:
bool isPalindrome(String s) {
String reversed = s.split('').reversed.join('');
return s == reversed;
}
- Usar dois ponteiros — um do início e outro do fim, e comparar os caracteres um a um:
bool isPalindrome(String s) {
int left = 0;
int right = s.length - 1;
while (left < right) {
if (s[left] != s[right]) return false;
left++;
right--;
}
return true;
}
Ambos os métodos são eficazes para verificar se uma string é um palíndromo.