Sobes.tech
Junior — Middle

Kā Dart var pārbaudīt, vai virkne ir lasāma vienādi no kreisās uz labo un no labās uz kreiso pusi?

sobes.tech AI

Atbilde no AI

Dart valodā jūs varat pārbaudīt, vai virkne ir palindroms (lasāma vienādi no kreisās uz labo un no labās uz kreiso pusi), vairākos veidos:

  1. Salīdzinot virkni ar tās apgriezto kopiju:
bool isPalindrome(String s) {
  String reversed = s.split('').reversed.join('');
  return s == reversed;
}
  1. Izmantojot divus rādītājus — vienu no sākuma, otru no beigām, un salīdzinot simbolus pa vienam:
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;
}

Abi veidi ir efektīvi, lai pārbaudītu, vai virkne ir palindroms.