首页 > 其他分享 >代码训练营 Day8 | 344.反转字符串 | 541.反转字符串II |

代码训练营 Day8 | 344.反转字符串 | 541.反转字符串II |

时间:2024-08-26 11:56:46浏览次数:14  
标签:right return cur 反转 II result text 字符串 left

344.反转字符串

  1. 使用双指针一个指针指向数组开始的位置,一个指针指向数组结束的位置
  2. 通过循环让两个指针元素相互交换知道两个指针碰到一起
class Solution(object):
    def reverseString(self, s):
        """
        :type s: List[str]
        :rtype: None Do not return anything, modify s in-place instead.
        """
        # use two pointer
        left = 0
        right = len(s) - 1
        temp = 0

        # iterate the list
        while right >= left:
            # swap the element
            temp = s[right]
            s[right] = s[left]
            s[left] = temp

            right -= 1
            left += 1
        
        # return original array
        return s

541.反转字符串II 

  1. 判断 i+k <= s.size 才进行反转,保证i+k要在数组范围内

  2. 反转跟344题逻辑一样写一个函数调用即可

class Solution(object):
    def reverseStr(self, s, k):
        """
        :type s: str
        :type k: int
        :rtype: str
        """
        
        def subString(text):
            # reverse the letter
            left = 0
            right = len(text)-1

            while right >= left:
                # sawp 
                text[left],text[right] = text[right],text[left]
                
                right -= 1
                left += 1

            return text
        
        # convert the string to list,easy to operate
        result = list(s)

        for cur in range(0,len(s),2*k):
            result[cur:cur+k] = subString(result[cur:cur+k])
        
        return "".join(result)

标签:right,return,cur,反转,II,result,text,字符串,left
From: https://blog.csdn.net/NeighborKing/article/details/141386864

相关文章

  • day9第四章 字符串part02| 151.翻转字符串里的单词 |卡码网:55.右旋转字符串|28. 实现
    151.翻转字符串里的单词classSolution{publicStringreverseWords(Strings){////删除首尾空格,分割字符串String[]str=s.trim().split("");StringBuildersb=newStringBuilder();////倒序遍历单词列表for(inti......
  • C语言初阶(四)字符函数和字符串函数
    字符分类函数C语言中有⼀系列的函数是专门做字符分类的,也就是⼀个字符是属于什么类型的字符的这些函数的使用都需要包含⼀个头文件是ctype.h函数   如果他的参数符合下列条件就返回真iscntrl   任何控制字符isspace   空白字符:空格‘’,换页‘\f’,换行'\n......
  • Python 字符串反转函数的实现与解析
    Python字符串反转函数的实现与解析在Python编程中,字符串是最常用的数据类型之一。反转字符串是一个常见的编程任务,通常用于数据处理、文本分析和算法练习。本文将详细介绍如何实现一个反转字符串的函数,探讨不同的方法,并分析它们的优缺点。一、字符串反转的基本概念字......
  • P9482 [NOI2023] 字符串 题解
    题目描述\(T\)组数据,给定长为\(n\)的字符串\(s\),\(q\)次询问,给定\(i,r\),求有多少个\(l\)满足:\(1\lel\ler\)。\(s[i:i+l-1]\)字典序小于\(R(s[i+l:i+2l-1])\)。数据范围\(1\leT\le5,1\len,q\le10^5,1\lei+2r-1\len\)。时间限制\(\texttt{1s}\),......
  • 算法笔记|Day34动态规划VII
    算法笔记|Day34动态规划VII☆☆☆☆☆leetcode198.打家劫舍题目分析代码☆☆☆☆☆leetcode213.打家劫舍II题目分析代码☆☆☆☆☆leetcode337.打家劫舍III题目分析代码☆☆☆☆☆leetcode198.打家劫舍题目链接:leetcode198.打家劫舍题目分析1.dp数组含义:d......
  • 3-python之字符串
    字符串基本特点1:字符串的本质是:字符序列。2:Python不支持单字符类型,单字符也是作为一个字符串使用的。        引号创建字符串                我们可以通过单引号或双引号创建字符串a='love'print(a)#结果是:love           ......
  • 字符串值提取工具-10-java 执行表达式引擎
    值提取系列字符串值提取工具-01-概览字符串值提取工具-02-java调用js字符串值提取工具-03-java调用groovy字符串值提取工具-04-java调用java?Janino编译工具字符串值提取工具-05-java调用shell字符串值提取工具-06-java调用python字符串值提取工具-07-ja......
  • MySQL常用字符串函数
    1、LOWER(column|str):将字符串参数值转换为全小写字母后返回mysql>selectlower('SQLCourse');+---------------------+|lower('SQLCourse')|+---------------------+|sqlcourse|+---------------------+ 2、UPPER(column|str):将字符串参数值转换为......
  • Java毕设项目II基于Java的高校学生课堂考勤系统的设计与实现
    目录一、前言二、技术介绍三、系统实现四、论文参考五、核心代码六、源码获取全栈码农以及毕业设计实战开发,CSDN平台Java领域新星创作者,专注于大学生项目实战开发、讲解和毕业答疑辅导。获取源码联系方式请查看文末一、前言随着企业规模的持续扩大和业务的日益复杂......
  • Java毕设项目II基于Java的高校学生课堂考勤系统的设计与实现
    目录一、前言二、技术介绍三、系统实现四、论文参考五、核心代码六、源码获取全栈码农以及毕业设计实战开发,CSDN平台Java领域新星创作者,专注于大学生项目实战开发、讲解和毕业答疑辅导。获取源码联系方式请查看文末一、前言随着高等教育规模的不断扩大,学生考勤管理......