首页 > 其他分享 >151.翻转字符串里的单词

151.翻转字符串里的单词

时间:2022-12-06 15:33:44浏览次数:63  
标签:151 空格 示例 单词 字符串 翻转

151.翻转字符串里的单词

力扣题目链接(opens new window)

给定一个字符串,逐个翻转字符串中的每个单词。

示例 1:
输入: "the sky is blue"
输出: "blue is sky the"

示例 2:
输入: " hello world! "
输出: "world! hello"
解释: 输入字符串可以在前面或者后面包含多余的空格,但是反转后的字符不能包括。

示例 3:
输入: "a good example"
输出: "example good a"
解释: 如果两个单词间有多余的空格,将反转后单词间的空格减少到只含一个。

func reverseWords(s string) string {
    b:=[]byte(s)
    length:=len(b)
    slow:=0
    for fast:=0;fast<length;fast++{
        if b[fast]!=' '{
            if slow!=0 {
                b[slow]=' '
                slow++
            }
            for (fast<length)&&(s[fast]!=' '){
                b[slow]=b[fast]
                slow++
                fast++
            }
        }
    }
    b=b[:slow]
    reverse(&b,0,slow-1)
    start:=0
    for i:=0;i<=slow;i++{
        if (i==slow)||(b[i]==' '){
            reverse(&b,start,i-1)
            start=i+1
        }
    }
    return string(b)
}


func reverse(b *[]byte, left, right int) {
	for left < right {
		(*b)[left], (*b)[right] = (*b)[right], (*b)[left]
		left++
		right--
	}
}

标签:151,空格,示例,单词,字符串,翻转
From: https://www.cnblogs.com/suehoo/p/16955439.html

相关文章

  • 当 MUST_CHANGE 为 ON 时,不能关闭 CHECK_POLICY 和 CHECK_EXPIRATION 选项。 (微软 SQL
    AnexceptionoccurredwhileexecutingaTransact-SQLstatementorbatch.TheCHECK_POLICYandCHECK_EXPIRATIONoptionscannotbeturnedOFFwhenMUST_CHANGEis......
  • ( Java 和 C++ 还是有差别)卑微地向API低下了头,但是反转字符串的单词依旧写了很久 学
    344.反转字符串-ezclassSolution{publicvoidreverseString(char[]s){intleft=0,right=s.length-1;chartmp;while(l......
  • 在Towify中如何配置 3D 翻转动画?
    效果展示:前置准备:准备需要执行翻转动画的卡片(下文简称“翻转卡片”)步骤分解:创建自定义动画选中翻转卡片点击+按钮添加自定义动画配置动画效果选中图片组件点击检查面板中......
  • 剑指offer:翻转单词顺序列
    题目描述牛客最近来了一个新员工Fish,每天早晨总是会拿着一本英文杂志,写些句子在本子上。同事Cat对Fish写的内容颇感兴趣,有一天他向Fish借来翻看,但却读不懂它的意思。例如,“s......
  • 代码随想录算法训练营Day15|102. 二叉树的层序遍历、226. 翻转二叉树、101. 对称二叉
    代码随想录算法训练营Day15|102.二叉树的层序遍历、226.翻转二叉树、101.对称二叉树102.二叉树的层序遍历102.二叉树的层序遍历需要借用一个辅助数据结构即队列来......
  • 简单列单词
    描述如果你计划读一本英语小说,可能你需要做一些提前准备,例如列出书中“常见的生词”。也许在以前,这是一件不可能的事。因为你既然没读过这本书,又怎么知道哪些是常见的......
  • 高级列单词
    描述现在给你一篇文章,请统计其中出现次数排名处于前n的单词,这里为了简单起见,所有非字母字符(包括空格、回车、标点、连字符"-"等等)都被认为是分隔单词的标志,换句话......
  • 单词(Play On Words)
    【分析】      首先需对欧拉道路有所了解。    存在欧拉道路的充分条件:     对于无向图而言,如果一个无向图是连通的,且最多只有两个奇点(顶点的度数为奇......
  • 倒排单词
    输入:Iamastudent输出:studentaamI最简单的做法:#include<iostream>usingnamespacestd;intmain(){stringstr,res;while(cin>>str)res=str+''+res;c......
  • leetcode_D4_58最后一个单词的长度
    1.题目  2.解一2.1  2.2  2.3  主要思路:3种方法相差不大,思路基本一致,主要是细节处理上有所不同,都是首先去掉字符串最前面和最后面的空元素,然后从最后......