Всем привет,

Это простая проблема, но ее часто задают на собеседованиях. Являетесь ли вы опытным программистом или только начинаете свое приключение в программировании, этот вопрос наверняка проверит ваши навыки.

В этом сообщении блога мы рассмотрим постановку задачи, разобьем ее на управляемые части и разработаем эффективный алгоритм для достижения оптимального решения. Итак, начнем-

сначала мы должны знать, что такое число-палиндром🤨🤨

Это просто означает, что число должно быть одинаковым с обеих сторон, даже если мы перевернем его.

727,121,85658 все эти числа являются примерами палиндромного числа.

мы можем решить эту проблему разными способами, давайте рассмотрим 2 способа

1-й метод - мы можем использовать предопределенные функции JavaScript

Здесь мы преобразуем число в строку с помощью функции toString(), а затем используем функцию split() для разделения чисел в массиве, затем используем обратное число в обратное, а затем просто соединяем числа.

поэтому, если это обратное число равно нашему исходному числу, мы можем вернуть true, иначе false.

2-й метод - это лучший подход, и мы должны использовать его в интервью.

это более практичный подход и вещи, которые мы должны понять, прежде чем продолжить. Отрицательное число не может быть числом-палиндромом.

Здесь мы просто возвращаем false, если число меньше 0.

теперь мы переходим к интересной части, которая заключается в том, что теперь мы меняем число с помощью логики, а не в этом вопросе, это скорее строительный блок во многих других вопросах, с которыми вы столкнетесь, поэтому мы должны знать, как это сделать без особых усилий с этого момента.

логика такова — мы используем цикл, и он будет продолжать работать до тех пор, пока число, которое мы получаем, не станет больше 0. мы берем последнюю цифру числа и сохраняем ее в переменную reverse, и мы используем reverse*10, который мы можем лучше понять с помощью пример пусть число 121

поэтому мы берем остаток от 121, деленный на 10, то есть 1, затем мы добавляем его в обратном порядке, и мы погружаем число на 10 и используем Math.floor() для вычисления числа, которое мы получаем, поэтому число становится 12, теперь тот же процесс повторяется сейчас На этот раз reverse уже равен 1, поэтому мы делаем 1 * 10 + 2 = 12, и аналогично в следующий раз это будет 12 * 10 + 1, то есть 121, так что вот как мы получаем реверс числа, а затем возвращаем true или false после сравнения значения .

Надеюсь, вы узнали что-то новое из этого блога👍👍

Спасибо тебе друг.