- 浏览: 183438 次
- 性别:
- 来自: 济南
文章分类
最新评论
Given an input string, reverse the string word by word.
For example,
Given s = "the sky is blue",
return "blue is sky the".
给定一个字符串,将里面包含的单词倒叙排列。我们可以将字符串通过空格分割成一个字符串数组,然后从后面开始组成一个新的字符串。这里要注意的是分割字符串我们用到了String的split()方法,split的参数类型是个正则表达式,不是简单的字符串,我们要用转义字符来写,例如用空格来分的话最好写成“\\s” 或者“\\s+”,代表通过一个空格或多个空格来分割。通过返回一个字符串数组的代码如下:
另外一种方法我们还可以从字符串末尾开始扫描,如果遇到空字符就跳过,知道遇到不为空的字符,标记当前字符的位置,然后继续扫描,直到遇到下一个为空的字符,用substring方法将这一段子串记录到新的字符串中,这样知道扫描完整个字符串。代码如下:
For example,
Given s = "the sky is blue",
return "blue is sky the".
给定一个字符串,将里面包含的单词倒叙排列。我们可以将字符串通过空格分割成一个字符串数组,然后从后面开始组成一个新的字符串。这里要注意的是分割字符串我们用到了String的split()方法,split的参数类型是个正则表达式,不是简单的字符串,我们要用转义字符来写,例如用空格来分的话最好写成“\\s” 或者“\\s+”,代表通过一个空格或多个空格来分割。通过返回一个字符串数组的代码如下:
public class Solution { public String reverseWords(String s) { String[] result = s.trim().split("\\s+"); StringBuilder sb = new StringBuilder(); for(int i = result.length - 1; i >= 0; i--) { sb.append(result[i] + " "); } return sb.toString().trim(); } }
另外一种方法我们还可以从字符串末尾开始扫描,如果遇到空字符就跳过,知道遇到不为空的字符,标记当前字符的位置,然后继续扫描,直到遇到下一个为空的字符,用substring方法将这一段子串记录到新的字符串中,这样知道扫描完整个字符串。代码如下:
public class Solution { public String reverseWords(String s) { if(s == null || s.length() == 0) return s; StringBuilder sb = new StringBuilder(); for(int i = s.length() - 1; i >= 0 ; i--) { if(s.charAt(i) == ' ') continue; int end = i; while(i >= 0 && s.charAt(i) != ' ') i --; sb.append(s.substring(i + 1, end + 1)).append(" "); } return sb.toString().trim(); } }
发表评论
-
498. Diagonal Traverse
2019-11-15 13:52 265Given a matrix of M x N eleme ... -
496 Next Greater Element I
2019-11-14 13:50 267You are given two arrays (witho ... -
Word Break II
2016-03-09 03:15 384Given a string s and a dictiona ... -
Insert Interval
2016-03-08 02:11 374Given a set of non-overlapping ... -
Merge Intervals
2016-03-07 05:25 497Given a collection of intervals ... -
Merge k Sorted Lists
2016-03-07 04:03 563Merge k sorted linked lists and ... -
Multiply Strings
2016-03-06 07:27 475Given two numbers represented a ... -
N-Queens II
2016-03-06 03:06 664Follow up for N-Queens problem. ... -
N-Queens
2016-03-06 02:47 469The n-queens puzzle is the prob ... -
First Missing Positive
2016-03-05 03:09 429Given an unsorted integer array ... -
Spiral Matrix
2016-03-04 03:39 575Given a matrix of m x n element ... -
Trapping Rain Water
2016-03-04 02:54 580Given n non-negative integers r ... -
Repeated DNA Sequences
2016-03-03 03:10 426All DNA is composed of a series ... -
Increasing Triplet Subsequence
2016-03-02 02:48 898Given an unsorted array return ... -
Maximum Product of Word Lengths
2016-03-02 01:56 929Given a string array words, fin ... -
LRU Cache
2016-02-29 10:37 602Design and implement a data str ... -
Super Ugly Number
2016-02-29 07:07 672Write a program to find the nth ... -
Longest Increasing Path in a Matrix
2016-02-29 05:56 842Given an integer matrix, find t ... -
Coin Change
2016-02-29 04:39 782You are given coins of differen ... -
Minimum Height Trees
2016-02-29 04:11 704For a undirected graph with tre ...
相关推荐
Reverse words in a string-leetcode
2 Reverse Words in a String II 19 3 Evaluate Reverse Polish Notation 21 4 Isomorphic Strings 25 5 Word Ladder 27 6 Word Ladder II 29 7 Median of Two Sorted Arrays 33 8 Kth Largest Element in an Array ...
javascript js_leetcode题解之151-reverse-words-in-a-string.js
python python_leetcode题解之151_Reverse_Words_in_a_String.py
python python_leetcode题解之186_Reverse_Words_in_a_String_II.py
6. Reverse Words in a String:给定一个字符串,将其单词反转并保持单词内部顺序不变。 7. Reverse Words in a String II:字符串处理,涉及到对字符串的反转和单词的分割。 8. String to Integer (atoi):将字符串...
7. Reverse Words in a String II:翻转字符串中的单词顺序,并且整个字符串也要翻转。 8. String to Integer (atoi):将字符串转换成整数,考虑溢出等问题。 9. Valid Number:判断一个字符串是否是有效的数字表示...
5. 字符串处理问题:例如Candy(糖果)、Trapping Rain Water(接雨水)、Reverse Words in a String II(翻转字符串中的单词)等,考察候选人对字符串操作的熟练度。 6. 动态规划问题:如Minimum Size Subarray ...
1. **151.py** - 这个编号可能是LeetCode中的问题151,题目名为"Reverse Words in a String"(字符串中的单词反转)。这个题目主要考察字符串操作,包括字符串分割、反转和重新组合。 2. **207.py** - 这可能是...
- Reverse Words in a String(字符串中的单词翻转) - String to Integer (atoi)(字符串转换整数) - Longest Substring Without Repeating Characters(无重复字符的最长子串) 4. Math(数学): 算法题目中...
- Reverse Words in a String(反转字符串中的单词) - Valid Palindrome(回文字符串验证) - Longest Palindromic Substring(最长回文子串) - Space Replacement(URL化) - Wildcard Matching(通配符匹配...
421 | [Maximum XOR of Two Numbers in an Array](https://leetcode.com/problems/maximum-xor-of-two-numbers-in-an-array/) | [C++](./C++/maximum-xor-of-two-numbers-in-an-array.cpp) [Python](./Python/...
3. **反转字符串中的单词**(Reverse Words in a String III) - 知识点:字符串处理,分隔符处理 - 解题策略:将字符串先按空格分割成单词数组,然后对数组进行反转,最后将单词数组连接起来,并在单词之间添加...
- **翻轉字符串中的單詞(Reverse Words in a String)** - 单词的定义与翻转方法。 - 字符串處理技術。 - **有效回文串(Valid Palindrome)** - 判斷字符串是否為回文串。 - 忽略大小寫與非字母數字字符。 - **...
- Reverse Words in a String:反转字符串中的所有单词。 - Valid Palindrome:检查一个字符串是否是回文。 - Longest Palindromic Substring:找到字符串中的最长回文子串。 - Remove Element:从数组中移除给定的...
- **反转字符串中的单词(Reverse Words in a String)** - 反转字符串中单词的顺序。 - **有效的回文字符串(Valid Palindrome)** - 判断一个字符串是否是回文字符串。 - **最长回文子串(Longest Palindromic ...
leetcode 2 sum c Leetcode 练习记录 这个专案主要存放我练习Leetcode有针对难度分类的集合题库(Collection ...Reverse Words in a String medium O 这题有点算是easy的程度, 目前解法为O(n^2)的时
Reverse Words in a String **知识点:** - **问题描述:** - 给定一个字符串,反转其中的每个单词,并保持单词顺序不变。 - **解决方案分析:** - **双指针:** - 先反转整个字符串。 - 再从左到右遍历,...
Reverse Words in a String C++实现时那个返回值是void也着实让我困惑了好久 Subsets DFS实现,竟然还WA了好几次。 Climbing Stairs 入门级记忆化dp 2014.10.30 Merge Sorted Array 归并排序基础 Remove Duplicates ...