LeetCode(剑指 Offer)- 58 - I. 翻转单词顺序
Posted 放羊的牧码
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode(剑指 Offer)- 58 - I. 翻转单词顺序相关的知识,希望对你有一定的参考价值。
题目链接:点击打开链接
题目大意:略
解题思路:略
相关企业
- 腾讯(Tencent)
- 谷歌(Google)
- 百度
- 华为
- 小米集团
- 亚马逊
- 微软(Microsoft)
- 搜狐
- 快手
- 美团
AC 代码
- Java
// 解决方案(1)
class Solution
public String reverseWords(String s)
String[] arr = s.trim().split(" ");
StringBuilder sb = new StringBuilder();
for (int i = arr.length - 1; i >= 0; i--)
if ("".equals(arr[i]))
continue;
if (i != arr.length - 1)
sb.append(" ");
sb.append(arr[i]);
return sb.toString();
// 解决方案(2)
class Solution
public String reverseWords(String s)
s = s.trim(); // 删除首尾空格
int j = s.length() - 1, i = j;
StringBuilder res = new StringBuilder();
while (i >= 0)
while (i >= 0 && s.charAt(i) != ' ') i--; // 搜索首个空格
res.append(s.substring(i + 1, j + 1) + " "); // 添加单词
while (i >= 0 && s.charAt(i) == ' ') i--; // 跳过单词间空格
j = i; // j 指向下个单词的尾字符
return res.toString().trim(); // 转化为字符串并返回
以上是关于LeetCode(剑指 Offer)- 58 - I. 翻转单词顺序的主要内容,如果未能解决你的问题,请参考以下文章
LeetCode(剑指 Offer)- 58 - II. 左旋转字符串
LeetCode(剑指 Offer)- 58 - II. 左旋转字符串
LeetCode剑指 Offer 58 - II. 左旋转字符串(C++)
[LeetCode]剑指 Offer 58 - I. 翻转单词顺序