前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >反转字符串

反转字符串

原创
作者头像
_kyle
修改2021-01-04 09:58:51
5010
修改2021-01-04 09:58:51
举报
文章被收录于专栏:kyle的专栏kyle的专栏

题目描述

难度级别:简单

编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。

不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。

你可以假设数组中的所有字符都是 ASCII 码表中的可打印字符。

示例 1:

输入:["h","e","l","l","o"] 输出:["o","l","l","e","h"] 示例 2:

输入:["H","a","n","n","a","h"] 输出:["h","a","n","n","a","H"]

解题思路

双指针

使用双指针,一个指向头,一个指向尾,两两交换,当两头指针小于尾指针时停止循环。

代码语言:javascript
复制
const reverseString = function(s) {
    for (let i = 0, j = s.length - 1; i < j; i++, j--)
        [s[i], s[j]] = [s[j], s[i]]
};

时间复杂度:O(n) 空间复杂度:O(1)

题目来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/reverse-string

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 题目描述
    • 示例 1:
    • 解题思路
      • 双指针
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档