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

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

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

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

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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容