Sobes.tech
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:

  1. Porovnáním řetězce s jeho obrácenou kopií:
bool isPalindrome(String s) {
  String reversed = s.split('').reversed.join('');
  return s == reversed;
}
  1. 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.