Sobes.tech
Junior — Middle

Na koje načine u Dart-u možete proveriti da li se niz čita isto sa leve na desno i sa desne na levo?

sobes.tech АИ

Одговор од АИ

U Dart-u možete proveriti da li je niz palindrom (čitaju se isto s leva na desno i s desna na levo) na nekoliko načina:

  1. Upoređivanjem niza sa njegovom obrnutom kopijom:
bool isPalindrome(String s) {
  String reversed = s.split('').reversed.join('');
  return s == reversed;
}
  1. Korišćenjem dva pokazivača — jedan od početka, drugi od kraja, i poređenjem karaktera naizmenično:
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;
}

Oba načina su efikasna za proveru da li je niz palindrom.