难度:简单
语言:js
解题思路:将字符串转换成数组,将数组进行顺序反转,再转换为字符串。
/**
* @param {string} s
* @return {string}
*/
var reverseWords = function(s) {
// 去掉字符串首尾的空格、以空格为条件分隔出单词
s = s.trim().split(/\s+/);
// 利用双指针进行顺序互换
let left = 0,right = s.length-1,temp=0;
while(left < right) {
temp = s[left];
s[left] = s[right];
s[right] = temp;
left++;
right--;
}
// 将数组拼接成字符串
return s.join(' ');
};
/**
* @param {string} s
* @return {string}
*/
var reverseWords = function(s) {
return s.split(' ').filter(function getString(word) {
return word;
}).reverse().join(' ');
};