题解 | #翻转单词序列#

翻转单词序列

http://www.nowcoder.com/practice/3194a4f4cf814f63919d0790578d51f3

```function ReverseSentence(str)
{
    // write code here
    if(str === ''){return ''} //特殊输入
    
    let stack = []
    let res1 = []
    let res2 = []
    let arr = [...str]
    for(let i=0;i<arr.length;i++){
        if(arr[i]===' '){
            let temp =stack.join('') 
            res1.push(temp) 
            stack = []
            continue
        }
        stack.push(arr[i])
        if(i===arr.length-1){
             let temp =stack.join('') 
            res1.push(temp) 
            stack = []
        }
    }
    while(res1.length){
        if(res1.length===1){
             res2.push(res1.pop())
        }
        else {
             res2.push(res1.pop().concat(' '))
        }
    }
    return res2.join('')
}

//想用一下栈的方法,写出来这么复杂。。。建议还是直接 return str.split(' ').reverse().join(' ')

module.exports = {
    ReverseSentence : ReverseSentence
};
全部评论

相关推荐

看到这个内容真是闹麻了。。。。。。现在有了AI以后很多人面试都会作弊吗?&nbsp;那对老老实实面试的人岂不是不公平....
程序员牛肉:公平那是对小孩子讲的童话故事,成年人的世界只有能不能接受失败的后果。 你要是能接受面试作弊被发现之后多家公司联合永久拉黑的后果,你就搞。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务