剑指offer 面试题42:翻转单词顺序VS左旋转字符串

题目一:
输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。为简单起见,标点符号和普通字母一样处理。例如输入字符串"I am a student.", 则输出"student. a am I"

解法:
两遍翻转即可。
第一遍:翻转整个字符串,得到 ".tneduts a ma I";
第二遍:逐一翻转各个单词。

题目二:
字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现左旋转操作的功能。比如输入字符串"abcdefg"和数字2,该函数将返回左旋转2位得到的结果"cdefgab"。

解法:
把ab和cdefgh看做两部分,分别旋转,得到"bagfedc",再整个旋转得到"cdefgab'

推荐阅读更多精彩内容

  • 1.把二元查找树转变成排序的双向链表 题目: 输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表。 要求不...
    曲终人散Li阅读 2,931评论 0 19
  • 题目描述:给定一个字符串,要求将字符串前面的若干个字符移到字符串的末尾。例如 :讲字符串“abcdef”的前3个字...
    blue_smile阅读 305评论 0 0
  • 剑指Offer笔试题(3) 题目来源:牛客网 题目一 和为S的连续正数序列 描述: 小明很喜欢数学,有一天他在做...
    Torang阅读 2,483评论 0 4
  • 说明: 本文中出现的所有算法题皆来自牛客网-剑指Offer在线编程题,在此只是作为转载和记录,用于本人学习使用,不...
    秋意思寒阅读 916评论 1 1
  • 本系列导航:剑指offer(第二版)java实现导航帖 面试题58:翻转单词顺序 题目要求:输入一个英文句子,翻转...
    ryderchan阅读 1,481评论 0 2
  • 已经两次了,我想把流量用完,不给移动或者联通沾一点便宜结果都是我自己多出钱多出力,上次移动超了一个G,60元,这次...
    米米妮妮_9992阅读 56评论 0 0
  • 副作用(side effects) (+ 1 2)计算的到3,就没有副作用,但是(println "hi")返回一...
    ukao阅读 44评论 0 0
  • 我在现实中的一端睡去, 与此同时,我在另一端的梦中醒来 梦中似乎更加险恶 有时也更加欢乐 险恶也好,欢乐也罢 我并...
    故事然后阅读 194评论 0 0