牛客网刷题21(2道题)

41.句子反转

题目链接
https://www.nowcoder.com/practice/0ae4a12ab0a048ee900d1536a6e98315?tpId=85&&tqId=29896&rp=16&ru=/activity/oj&qru=/ta/2017test/question-ranking
题目描述
给定一个句子(只包含字母和空格), 将句子中的单词位置反转,单词用空格分割, 单词之间只有一个空格,前后没有空格。 比如: (1) “hello xiao mi”-> “mi xiao hello”
输入描述
输入数据有多组,每组占一行,包含一个句子(句子长度小于1000个字符)
输出描述
对于每个测试示例,要求输出句子中单词反转后形成的句子
示例1
输入
hello xiao mi
输出
mi xiao hello
题目分析

  1. 注意多组数据输入。
  2. 使用空格分割字符。
  3. 使用reverse()输出逆序字符。
  4. 使用join(’ ')连接字符。
var input;
while(input = readline()){
    var arr = input.split(' ').reverse();
    console.log(arr.join(' '));
}

42.斐波那契数列

题目链接
https://www.nowcoder.com/practice/aa8ffe28ec7c4050b2aa8bc9d26710e9?tpId=2&&tqId=10856&rp=1&ru=/activity/oj&qru=/ta/front-end/question-ranking
题目描述
用 JavaScript 实现斐波那契数列函数,返回第n个斐波那契数。 f(1) = 1, f(2) = 1 等
题目分析

  1. 当n<=2时,f(n)=1;
  2. 当n>=3时,f(n)=f(n-1)+f(n-2)。
function fibonacci(n) {
    if(n <=2){
        return 1;
    }else{
        var f1 = 1;
        var f2 = 1;
        var f3;
        for(var i=3; i<=n; i++){
            f3 = f1 + f2;
            f1 = f2;
            f2 = f3;
        }
        return f3;
    }
}
发布了22 篇原创文章 · 获赞 0 · 访问量 354

猜你喜欢

转载自blog.csdn.net/weixin_41796393/article/details/104385705
今日推荐