首页 > 试题广场 >

反转字符串

[编程题]反转字符串
  • 热度指数:150162 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
写出一个程序,接受一个字符串,然后输出该字符串反转后的字符串。(字符串长度不超过1000)

数据范围: 
要求:空间复杂度 ,时间复杂度
示例1

输入

"abcd"

输出

"dcba"
示例2

输入

""

输出

""
function solve(str) {
  // write code here
  return [...str].reverse().join("");
}
module.exports = {
  solve: solve,
};

发表于 2022-08-15 16:52:11 回复(0)
/**
 * 反转字符串
 * @param str string字符串 
 * @return string字符串
 */
function solve( str ) {
    // write code here
    return str.split('').reverse().join('');
}

发表于 2022-05-07 16:26:56 回复(0)
function solve( str ) {
    // write code here
    let arr = str.split('')
    let i = 0;
    let j = arr.length - 1
    while(i < j) {
        [arr[i], arr[j]] = [arr[j], arr[i]]
        i++
        j--
    }
    return arr.join('')
}
发表于 2022-04-30 14:15:46 回复(0)
// 不使用reverse
if (!str) return '';
const ans = [];
for (let i = str.length - 1; i >= 0; i--) {
ans.push(str[i]);
}
return ans.join('');
发表于 2021-11-28 11:38:39 回复(0)
function solve( str ) {
    // write code here
    let res = ""
    for (let i in str) {
        res = str[i] + res
    }
    return res
}

发表于 2021-11-11 16:49:21 回复(0)
JavaScript版:
function solve( str ) {
    return str.split("").reverse().join("")
}

发表于 2021-10-22 18:13:11 回复(0)
/**
 * 反转字符串
 * @param str string字符串 
 * @return string字符串
 */
function solve( str ) {
    let result = []
    for(let i = str.length - 1;i >= 0;i--){
        result.push(str[i])
    }
    return result.join('')
}
module.exports = {
    solve : solve
};
发表于 2021-09-29 21:02:03 回复(0)
var name = "My city is WH";
            var nameArr = name.split('');
            var result = nameArr.reverse();
            var resultStr = result.join("");
            console.log(resultStr); 
发表于 2021-09-23 20:45:33 回复(0)
 return str.split('').reverse().join('')

发表于 2021-09-05 17:40:42 回复(0)
//JS解题思路:从后面往前进行遍历(有点投机取巧,大佬轻喷)
function solve( str ) {
     var tmp = '';
    for(var i=str.length-1;i>=0;i--)
        tmp += str[i];
    return tmp
}
module.exports = {
    solve : solve
};

发表于 2021-08-16 16:09:10 回复(0)
function solve( str ) {
    // write code here
    let arr = str.split("");
    arr = arr.reverse();
    return arr.join("");
}

split(separator,howmany)方法用于把一个字符串分割成字符串数组,其中参数separator 必需。字符串或正则表达式,从该参数指定的地方分割 。howmany可选。该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。 这里第一个参数为一个空字符""

reverse() 方法用于颠倒数组中元素的顺序。

join(separator) 方法用于把数组中的所有元素放入一个字符串。元素是通过指定的分隔符进行分隔的。separator可选。指定要使用的分隔符。如果省略该参数,则使用逗号作为分隔符。这里第一个参数为一个空字符""进行分割,不然它默认的逗号不符合要求。

发表于 2021-08-05 20:09:16 回复(0)
JavaScript版本:
function solve( str ) {
    // write code here
//     
    let newStr=str.split('');
    let start=0;
    let end=newStr.length-1;
    while(start<end){
        [newStr[start],newStr[end]]=[newStr[end],newStr[start]];
        start++;
        end--;
    }
    return newStr.join('');
}


发表于 2021-08-02 10:43:16 回复(0)
function solve( str ) {
    // write code here
  return str.split("").reverse().join("");
}
不调用reverse
function solve( str ) {
    // write code here
  let strs = str.split("");
  let n = strs.length;
  for(let i=0;i<n/2;i++){
    let temp = strs[i];
    strs[i] = strs[n-1-i];
    strs[n-1-i] = temp;
  }
  return strs.join("");
}
module.exports = {
    solve : solve
};


编辑于 2021-07-20 10:50:24 回复(0)
/**
 * 反转字符串
 * @param str string字符串 
 * @return string字符串
 */
function solve( str ) {
    // write code here
    if(!str) return str;
    return str.split('').reverse().join('');
}
module.exports = {
    solve : solve
};
感觉这道题是让我们这些菜鸟找回一点自信的题目, 给自己打个气,前进

发表于 2021-04-13 21:14:59 回复(0)
function solve( str ) {
    return [...str].reverse().join('');
}

发表于 2021-04-07 16:22:37 回复(0)
JS直接一行搞定
/**
 * 反转字符串
 * @param str string字符串 
 * @return string字符串
 */
function solve( str ) {
    // write code here
    return str.split("").reverse().join("");
}
module.exports = {
    solve : solve
};


发表于 2021-03-30 23:56:48 回复(0)

问题信息

上传者:牛客332641号
难度:
24条回答 15630浏览

热门推荐

通过挑战的用户

查看代码