1. 倒序遍历字符串
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
* 反转字符串
* @param str string字符串
* @return string字符串
*/
function solve( str ) {
// write code here
if(!str.length) {
return ""
}
let a =[]
for(let i=str.length-1; i>=0; i--) {
a.push(str[i])
}
const str1 = a.join("")
console.log(a)
return str1
}
module.exports = {
solve : solve
};
2. 交换
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
* 反转字符串
* @param str string字符串
* @return string字符串
*/
function solve(str) {
// write code here
if (!str.length) {
return "";
}
let a1 = "";
let a2 = "";
let a=[]
for (let i = 0; i < str.length - 1; i++) {
a1 = str[i]
a2 = str[str.length -1-i]
a[str.length-1-i] = a1
a[i] = a2
}
console.log(a);
const str1 = a.join("")
return str1
}
module.exports = {
solve: solve,
};
优化:
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
* 反转字符串
* @param str string字符串
* @return string字符串
*/
function solve(str) {
// write code here
if (!str.length) {
return "";
}
let a1 = "";
let a = []
for (let i = 0,j=str.length -1; i <= j; i++,j--) {
a[i] = str[j]
a[j] = str[i]
}
const str1 = a.join("")
console.log(str1);
return str1
}
module.exports = {
solve: solve,
};
3.交换
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
* 反转字符串
* @param str string字符串
* @return string字符串
*/
function solve(str) {
// write code here
if (!str.length) {
return "";
}
let i = 0, j=str.length -1
let a = new Array(str.length)
for (; i < j; i++,j--) {
a[i] = str[j]
a[j] = str[i]
}
if(str.length % 2 ===1) {
a[i] = str[i]
}
const str1 = a.join("")
console.log(str1);
return str1
}
module.exports = {
solve: solve,
};