首页 > 其他分享 >leedcode-反转字符串

leedcode-反转字符串

时间:2024-04-09 22:36:20浏览次数:16  
标签:right 指向 反转 List leedcode 字符串 left 指针

自己写的,这么简单?

from typing import List

class Solution:
    def reverseString(self, s: List[str]) -> None:
       
        n = len(s)  # 获取字符串列表的长度
        
        # 使用双指针法来反转字符串
        # 初始化指针i指向字符串开头,指针j指向字符串结尾
        # 依次交换指针i和j指向的字符,直到i指向的位置超过j
        for i in range(n // 2):
            # 交换s[i]和s[n-1-i]处的字符
            s[i], s[n - 1 - i] = s[n - 1 - i], s[i]
        
        # 函数不返回任何值,因为直接修改了输入的列表s

 双指针:

from typing import List

class Solution:
    def reverseString(self, s: List[str]) -> None:
       
        left = 0  # 左指针,指向字符串的开头
        right = len(s) - 1  # 右指针,指向字符串的末尾
        
        # 使用双指针法来反转字符串
        # 初始化左指针指向字符串的开头,右指针指向字符串的末尾
        while left < right:
            # 交换左指针和右指针指向的字符
            s[left], s[right] = s[right], s[left]
            
            # 移动左指针向右移动一步
            left += 1
            
            # 移动右指针向左移动一步
            right -= 1
        
        # 函数不返回任何值,因为直接修改了输入的列表s

 

标签:right,指向,反转,List,leedcode,字符串,left,指针
From: https://www.cnblogs.com/yyyjw/p/18125021

相关文章

  • MU-MIMO用户间干扰消除-信道反转与规则化信道反转
    BC中,数据传输的主要困难是不能在接收机间直接进行协同信号检测,因此需要在BS处消除数据间的干扰。考虑四种传输方式:信道反转、块对角化、脏纸编码和THP预编码。信道反转假设用户数等于BS天线数,即\(K=N_B\),并假设下行用户为单天线用户。令\(\tilde{x}_u\)表示第\(u\)个用户的信号......
  • C语言08-函数(递归、字符串、日期时间、数学计算函数),指针
    第11章函数11.7递归函数​ ——相当于俄罗斯套娃;一个程序未执行结束会挂起,相当于堆栈一个函数在函数体内又调用了本身,我们称为递归调用,这样的函数就是递归函数。递归函数成功执行需满足以下两个条件:(1)必须有一个明显的结束条件。(2)必须有一个趋近于结束条件的趋势......
  • C++程序分享--常见编程面试题:判断字符串是否为回文串
    关注我,持续分享逻辑思维&管理思维;可提供大厂面试辅导、及定制化求职/在职/管理/架构辅导;有意找工作的同学,请参考博主的原创:《面试官心得--面试前应该如何准备》,《面试官心得--面试时如何进行自我介绍》, 《做好面试准备,迎接2024金三银四》。【图解《程序员面试常见的十大算法......
  • 求字符串的连续最长字串
    前言给定一个字符串,求连续字符最长子串,比如aaaacabbbbbbbc,输出七个b。(牛客上看到的面试手撕题,闲着没事实现了一下)#include<iostream>#include<map>#include<algorithm>usingnamespacestd;intmain(){strings;cin>>s;intcount=1;......
  • 【蓝桥·算法双周赛 第 9 场 小白入门赛】字符迁移【算法赛】题解(字符串+模运算+差分)
    思路差分数组是一种特殊的数组,它的第iii个数定义为原数组的第ii......
  • 【蓝桥·算法双周赛 第 4 场 小白入门赛】自助餐【算法赛】题解(分支+字符串)
    思路首先定义一个整型变量n和一个长整型变量ans,其中n用于存放输入的字符串个数,ans则用于累计所有字符串对应的价格。在接收到n之后,进入一个循环,在循环中,每次接收一个字符串s,并根据s的首字母判断该字符串对应的餐盘种类,并将其价格累加到ans中。具体来说,如果......
  • Python基础笔记02-while、字符串格式化、运算符、基础概念与数据类型
    前言!!!注意:本系列所写的文章全部是学习笔记,来自于观看视频的笔记记录,防止丢失。观看的视频笔记来自于:哔哩哔哩武沛齐老师的视频:2022Python的web开发(完整版)入门全套教程,零基础入门到项目实战1.条件语句补充1.1基本语句if条件: ...else:...1.2多条件if条件1:......
  • Python文档字符串设置--在PyCharm中
    引言在PyCharm中,只要我们在一个函数下面输入一个三引号"""并回车,PyCharm会自动帮我们补全文档字符串,如下图所示:然而,有些小伙伴的pycharm却无法实现这种功能,接下来我会讲一下,如何在PyCharm中设置,让PyCharm自动生成我们想要的文档字符串。PyCharm文档字符串种类种类如下所示:......
  • 探秘KMP算法:解密字符串匹配的黑科技
    KMP算法在正式进入KMP算法之前,不得不先引经据典一番,因为直接去理解KMP,你可能会很痛苦(别问,问就是我也痛苦过)。所以做好前面的预热工作非常非常重要,为了搞明白KMP,在没见到KMP算法的完整代码之前,请耐心的将前面的东西看完。一些相关的概念学习KMP算法,得明白它主要得作用......
  • 格式化字符串走过的坑 pwn109
    格式化字符串走过的坑pwn109今天做的一道题有一个坑我调试半天终于打通了,格式化字符串的坑,确实不少,东西也比较多容易忘记,怎么说呢,功夫在平时,经验少了老规矩先看一下保护FullRELRO意味着got不能修改也就是不能通过格式化字符串漏洞来改got表,但是nx保护关闭了,也就是我们可以通......