著名的JavaScript采访问题之一。如何检查JavaScript中的文传。 palindrome是一个单词或短语,在反向顺序上也读取相同。其中一些例子是公民,转子,中午,水平,妈妈,夫人和赛车。
现在让我们看看如何在JavaScript中解决此问题。大多数程序员将以直接的方式进行,并用于循环解决此问题。让我们首先探索:
const isPalindrome = (string) => {
const length = string.length;
if (!string) return false;
for (let i = 0; i < length; i++) {
if (string[i] !== string[length - i - 1]) {
return false;
}
}
return true;
}
// isPalindrome('madam') prints true
// isPalindrome('hello') prints false
这很好,可以解决我们手中的问题。但是我们可以改善该计划中的任何东西。如果您看到,要确认字符串是否为palindrome,我们只需要检查一半的字符串即可。例如,如果字符串长度为10个字符,我们可以检查并比较5个字符以验证palindrome。如果字符串长度是奇数,可以说5个字符,我们只需要检查2个字符。如果其余字符
现在将其应用于我们的程序,我们可以将循环迭代减少到一半。
const isPalindrome = (string) => {
const mid = Math.floor(string.length / 2);
const length = string.length
if (!string) return false;
for (let i = 0; i < mid; i++) {
if (string[i] !== string[length - i - 1]) {
return false;
}
}
return true;
}
// isPalindrome('rotor') prints true
// isPalindrome('hello') prints false
像往常一样,这是解决问题的方法之一。在您的解决方案下面评论。
在我们的YouTube中检查pelindrome