Алгоритми та структури даних · Junior · Запитання 43 з 75

Як перевірити, чи рядок є паліндромом, за O(n) часу й O(1) додаткової пам'яті?

Пояснення

Два вказівники порівнюють s[i] із s[j] і зупиняються на першій розбіжності. Розворот теж працює, але створює новий рядок, тобто займає O(n) пам'яті. Сортування не підходить: воно втрачає порядок символів.

Де почитати

Помилка в запитанні

Алгоритми та структури даних · Junior · запитання 43

Перевірте себе

Пройдіть тест Алгоритми та структури даних · Junior: запитання й варіанти перемішуються, а наприкінці - розбір помилок.

Пройти цей тест