【JavaScript】7-32 说反话-加强版 (20分)

题目:

给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。

输入格式:

测试输入包含一个测试用例,在一行内给出总长度不超过500 000的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用若干个空格分开。

输出格式:

每个测试用例的输出占一行,输出倒序后的句子,并且保证单词间只有1个空格。

输入样例:

Hello World   Here I Come

输出样例:

Come I Here World Hello

思路:

连续空格情况,判断一下元素是否存在;可以用多种方法来实现数组逆序。

JavaScript代码;

const { parse } = require('path')
var readline = require('readline')

const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
})

rl.on('line', function(line) {
    var a = line.split(' ')
    var strArr = []

    for (let i = 0; i < a.length; i++) {
        if (a[i]) {
            strArr.push(a[i])
        }
    }

    var ret = reverse(strArr)
    console.log(ret)
})

function reverse(strArr) {
    var result = strArr.reverse()    //数组逆序
    return result.join(' ')
}
原文地址:https://www.cnblogs.com/moonskies/p/14339610.html