代码随想录算法训练营第七天 |151.翻转字符串里的单词

今天是代码随想录的第七天,写了力扣的151.翻转字符串里的单词;

之后或许还要再琢磨琢磨

代码随想录链接

力扣链接

151.翻转字符串里的单词,代码如下:

python 复制代码
# class Solution:
#     def reverseWords(self, s: str) -> str:
#         # Solution1
# (版本一)先删除空白,然后整个反转,最后单词反转。 因为字符串是不可变类型,所以反转单词的时候,需要将其转换成列表,然后通过join函数再将其转换成列表,所以空间复杂度不是O(1)

#         # 删除前后空白
#         s = s.strip()
#         # 反转整个字符串
#         s = s[::-1]
#         # 将字符串拆分为单词,并反转每个单词
#         s = ' '.join(word[::-1] for word in s.split())
#         return s

          # Solution2
          # 使用双指针;
class Solution:
    def reverseWords(self, s: str) -> str:
        # 将字符串拆分为单词,即转换成列表类型
        words = s.split()

        # 反转单词
        left, right = 0, len(words) - 1
        while left < right:
            words[left], words[right] = words[right], words[left]
            left += 1
            right -= 1

        # 将列表转换成字符串
        return " ".join(words)```
相关推荐
VidDown12 小时前
24fps 转 25fps 不只是改个数字:帧率转换、PAL/NTSC 与音频补偿
python·网络协议·音视频·视频编解码·视频
leobertlan12 小时前
痛苦系列 | DSP-03 跨越单位圆:Z变换与零极点分析
算法·程序员
蛋蛋的就会顺顺的12 小时前
hot100 p0——栈,贪心算法,动态规划
java·前端·javascript·算法·leetcode·力扣
开发小能手12313 小时前
答案daanC语言
数据结构·算法
死磕音视频14 小时前
让小模型做选择题:限定候选项并读取 logits 概率的入门实践(附 Python 代码)
开发语言·python·大模型·文本分类·transformers
凤山老林14 小时前
Spring Boot 接入国密 SM2/SM3/SM4 的一些实践记录
spring boot·后端·python
Navigator_Z15 小时前
LeetCode //C - 1291. Sequential Digits
c语言·算法·leetcode
pride.li16 小时前
第03章 Python 教程-基础语法:注释与变量
服务器·前端·后端·python·算法·计算机视觉
databook16 小时前
用 Pydantic AI 从零搭建一个能干活的 AI Agent
人工智能·python
顽疲16 小时前
Java vue 养老系统源码详解:月账单 care_month_bill 与 Quartz 扣费 Job 实践
java·开发语言·vue.js·vue养老·springboot养老·java养老