力扣题:字符串的反转-11.23

力扣题-11.23

[力扣刷题攻略] Re:从零开始的力扣刷题生活

力扣题1:557. 反转字符串中的单词 III

解题思想:先读取单词,然后将单词进行翻转即可

python 复制代码
class Solution(object):
    def reverseWords(self, s):
        """
        :type s: str
        :rtype: str
        """
        word_list = s.split()
        string = ''
        for i in range(len(word_list)):
            string += self.reverse(word_list[i]) + ' '
        return string.rstrip()

    def reverse(self, s):
        s_list = list(s)
        for i in range(len(s_list)//2):
            temp = s_list[i]
            s_list[i] = s_list[len(s_list)-i-1]
            s_list[len(s_list)-i-1] = temp
        return ''.join(s_list)
cpp 复制代码
class Solution {
public:
        string reverseWords(string s) {
        string result = "";
        int start = 0;
        int temp = 0;
        for (int i = 0; i < s.size(); i++) {
            if (s[i] != ' ') {
                temp += 1;
            } else {
                result += reverse(s.substr(start, temp)) + ' ';
                start = i + 1;
                temp = 0;
            }
        }
        result += reverse(s.substr(start, temp)); 
        return result;
    }

    string reverse(const string &s) {
        string reversed = s;
        for (int i = 0; i < reversed.size() / 2; i++) {
            char temp = reversed[i];
            reversed[i] = reversed[reversed.size() - 1 - i];
            reversed[reversed.size() - 1 - i] = temp;
        }
        return reversed;
    }
};
相关推荐
向阳@向远方17 分钟前
第二章 简单程序设计
开发语言·c++·算法
github_czy1 小时前
RRF (Reciprocal Rank Fusion) 排序算法详解
算法·排序算法
许愿与你永世安宁2 小时前
力扣343 整数拆分
数据结构·算法·leetcode
爱coding的橙子2 小时前
每日算法刷题Day42 7.5:leetcode前缀和3道题,用时2h
算法·leetcode·职场和发展
满分观察网友z2 小时前
从一次手滑,我洞悉了用户输入的所有可能性(3330. 找到初始输入字符串 I)
算法
YuTaoShao3 小时前
【LeetCode 热题 100】73. 矩阵置零——(解法二)空间复杂度 O(1)
java·算法·leetcode·矩阵
Heartoxx3 小时前
c语言-指针(数组)练习2
c语言·数据结构·算法
大熊背3 小时前
图像处理专业书籍以及网络资源总结
人工智能·算法·microsoft
满分观察网友z3 小时前
别怕树!一层一层剥开它的心:用BFS/DFS优雅计算层平均值(637. 二叉树的层平均值)
算法
杰克尼4 小时前
1. 两数之和 (leetcode)
数据结构·算法·leetcode