推荐答案
function reverseString(str) { return str.split('').reverse().join(''); }
本题详细解读
1. 问题分析
字符串反转是一个常见的编程问题,要求将输入的字符串顺序颠倒。例如,输入 "hello"
,输出应为 "olleh"
。
2. 解决方案
我们可以通过以下步骤来实现字符串反转:
- 将字符串转换为数组:使用
split('')
方法将字符串拆分为字符数组。例如,"hello"
会被拆分为['h', 'e', 'l', 'l', 'o']
。 - 反转数组:使用
reverse()
方法将数组中的元素顺序反转。例如,['h', 'e', 'l', 'l', 'o']
会被反转为['o', 'l', 'l', 'e', 'h']
。 - 将数组转换回字符串:使用
join('')
方法将数组中的元素重新组合成字符串。例如,['o', 'l', 'l', 'e', 'h']
会被组合为"olleh"
。
3. 代码实现
function reverseString(str) { return str.split('').reverse().join(''); }
4. 示例
console.log(reverseString("hello")); // 输出: "olleh" console.log(reverseString("world")); // 输出: "dlrow"
5. 复杂度分析
- 时间复杂度:
O(n)
,其中n
是字符串的长度。split
、reverse
和join
操作的时间复杂度都是线性的。 - 空间复杂度:
O(n)
,因为需要额外的空间来存储字符数组。
6. 其他实现方式
除了上述方法,还可以使用循环或递归来实现字符串反转,但上述方法是最简洁和高效的。