代码随想录算法训练营第七天 |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)```
相关推荐
北冥you鱼3 小时前
Go 语言读取链上数据:从基础到实战
开发语言·后端·golang
nianniannnn3 小时前
c++复习自存--继承
开发语言·c++
kebidaixu3 小时前
两轮BMS 防打火策略详解
算法
error:(3 小时前
【系统与实战双精通】VS Code 调试 ROS2 Python 节点与 Launch 系统指南
android·java·python
weigangwin4 小时前
LlamaIndex 第一次试用:别先写 RAG Demo,先验上下文合同
python·ai·agent·rag·检索·llamaindex·观测性
省四收割者4 小时前
一文详解信号完整性(1)
python·嵌入式硬件·数学建模·信息与通信·信号处理·智能硬件
wabs6664 小时前
关于动态规划【力扣1035.不相交的线和53.最大子数组和的思考】
算法·leetcode·动态规划
退休倒计时4 小时前
【每日一题】LeetCode 199. 二叉树的右视图 TypeScript
算法·leetcode·typescript
可编程芯片开发4 小时前
通过MATLAB实现PID控制器,积分分离控制器以及滑模控制器
算法
叩码以求索4 小时前
经典算法实例分析:写字符串需要的行数
开发语言·javascript·ecmascript