Junior — Middle
Jakými způsoby lze v Dartu ověřit, že řetězec je čitelný stejně zleva doprava a zprava doleva?
sobes.tech AI
Odpověď od AI
V Dartu lze ověřit, zda je řetězec palindrom (čte se stejně zleva doprava i zprava doleva), několika způsoby:
- Porovnáním řetězce s jeho obrácenou kopií:
bool isPalindrome(String s) {
String reversed = s.split('').reversed.join('');
return s == reversed;
}
- Použitím dvou ukazatelů — jeden od začátku, druhý od konce, a porovnáváním znaků střídavě:
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;
}
Obě metody jsou efektivní pro kontrolu, zda je řetězec palindrom.