zoukankan      html  css  js  c++  java
  • 刷题力扣344. 反转字符串

    题目链接

    来源:力扣(LeetCode)
    链接:https://leetcode-cn.com/problems/reverse-string
    著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

    题目描述

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

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

    示例 1:

    输入:s = ["h","e","l","l","o"]
    输出:["o","l","l","e","h"]
    

    示例 2:

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

    提示:

    • 1 <= s.length <= 105
    • s[i] 都是 ASCII 码表中的可打印字符

    题目分析

    1. 根据题目描述反转字符数组
    2. 设置两个指针分别指向数组起始位置和末尾,依次交换两个位置的值,直到两个指针相遇

    代码

    class Solution {
    public:
        void reverseString(vector<char>& s) {
            int left = 0;
            int right = s.size() - 1;
            char c;
            while (left < right) {
                c = s[left];
                s[left] = s[right];
                s[right] = c;
                ++left;
                --right;
            }
        }
    };
    
  • 相关阅读:
    API
    API
    for in
    event flow
    object
    Report of program history
    正则表达式
    伪类与伪元素
    Position
    js学习之原型(补充)
  • 原文地址:https://www.cnblogs.com/HanYG/p/15703424.html
Copyright © 2011-2022 走看看