给定一个长度为 n 的字符串,请编写一个函数判断该字符串是否回文。如果是回文请返回true,否则返回false。
简单解法
function isPalindrome(str) {
if (typeof str !== 'string') {
return false
}
const arr = str.split('');
const reverseArr = arr.reverse();
const reverseStr = reverseArr.join('');
return str === reverseStr;
}
利用数据结构
function isPalindrome(str = '') {
if (typeof str !== 'string') {
return false
}
let flag = true
let arr = str.split('')
while (arr.length > 1) {
let left = arr.shift();
let right = arr.pop()
if (left !== right) {
flag = false
}
}
return flag
}