#yyds干货盘点# 解决剑指offer(翻转单词序列)

将相本无种,男儿当自强。这篇文章主要讲述#yyds干货盘点# 解决剑指offer:翻转单词序列相关的知识,希望能为你提供帮助。
1.简述:
描述
牛客最近来了一个新员工Fish,每天早晨总是会拿着一本英文杂志,写些句子在本子上。同事Cat对Fish写的内容颇感兴趣,有一天他向Fish借来翻看,但却读不懂它的意思。例如,“nowcoder. a am I”。后来才意识到,这家伙原来把句子单词的顺序翻转了,正确的句子应该是“I am a nowcoder.”。Cat对一一的翻转这些单词顺序可不在行,你能帮助他么?
数据范围:
进阶:空间复杂度    ,时间复杂度    ,保证没有只包含空格的字符串
示例1
输入:

"nowcoder. a am I"

返回值:
"I am a nowcoder."

复制
示例2
输入:
""

返回值:
""

2.代码实现:
import java.util.*;
public class Solution
//字符串反转函数
private void reverse(char [] c, int l, int h)
//双指针反转
while(l < h)
swap(c, l++, h--);

//字符交换函数
private void swap(char [] c, int l, int h)
char temp = c[l];
c[l] = c[h];
c[h] = temp;


public String ReverseSentence(String str)
int n = str.length();
char[] c = str.toCharArray();
//第一次整体反转
reverse(c, 0, n - 1);
for(int i = 0; i < n; i++)
int j = i;
//以空格为界找到一个单词
while(j < n & & c[j] !=)
j++;
//将这个单词反转
reverse(c, i, j - 1);
i = j;

return new String(c);



【#yyds干货盘点# 解决剑指offer(翻转单词序列)】


    推荐阅读