Leetcode刷题日记(六)

前一篇leetcode刷题日记我们讲到了双指针这一种的经典中的经典解题方法。今天呢我们继续来给大家分享一道leetcode中双指针的常见题目,解题方法也很简单,相信长期刷算法题的人都做得出来的。现在上题目:

博主刚开始看到这道题目,第一反应想到的是vector动态数组的逆序(利用修改sort的第三个参数,这前面有讲到的)。而想起今天的主题——双指针,就想到了利用指针从两端向中间靠来交换字符(有点刚开始学C语言时的感觉,hhh)。

下面是利用的双指针的解题方法:

class Solution {
public:
    void reverseString(vector<char>& s)//这里传入动态数组s

{
        int n = s.size();//定义这个动态数组大小
        for (int left = 0, right = n - 1; left < right; ++left, --right)

         {
            swap(s[left], s[right]);//交换两个字符,利用动态数组的swap交换方法(不熟悉的请去看一                                              下博主写的c++常见容器vector

          )
      
    }
};

本贴为博主亲手整理。如有错误,请评论区指出,一起进步。谢谢大家的浏览.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值