#yyds干货盘点# 解决剑指offer:翻转单词序列
Posted 97的风
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了#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:翻转单词序列的主要内容,如果未能解决你的问题,请参考以下文章