首页 > 试题广场 >

句子反转

[编程题]句子反转
  • 热度指数:64190 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M
  • 算法知识视频讲解
给定一个句子(只包含字母和空格), 将句子中的单词位置反转,单词用空格分割, 单词之间只有一个空格,前后没有空格。 比如: (1) “hello xiao mi”-> “mi xiao hello”

输入描述:
输入数据有多组,每组占一行,包含一个句子(句子长度小于1000个字符)


输出描述:
对于每个测试示例,要求输出句子中单词反转后形成的句子
示例1

输入

hello xiao mi

输出

mi xiao hello
咋一看我这个代码量真的少。
使用正则表达式匹配单词,反转后按序输出。
var str = readline();// 读取输入
var reg = /[a-zA-Z]{1,}\b/g;// 匹配所有单词
var arr = str.match(reg);// 获取单词数组
arr.reverse()// 反转
console.log(arr.join(' '))// 输出字符串

发表于 2019-02-20 17:05:29 回复(0)
while(line=readline()){
input=line.split(" ");
var l=input.length;
if (l===0){
print();
}
output=new Array(l);
for (var i=0;i<l;i++){
output[l-i-1]=input[i].trim();
}
var output_sentence=output.join(' ');
print(output_sentence);
}

编辑于 2018-03-24 17:07:47 回复(0)
print(readline().split(" ").reverse().join(" "));

发表于 2017-09-09 16:25:23 回复(0)
var line=readline();
print(line.split(" ").reverse().join(' '));
//直接分隔之后反转再连接
发表于 2017-08-29 13:33:07 回复(0)
//...直接转换成数组翻转再连接成字符串
while(line = readline()){
    var lines = line.split(' ');
    var str = lines.reverse().join(' ');
    print(str);
}

发表于 2017-08-08 10:11:00 回复(0)