初级算法探索——数学篇(一)

问题:Fizz Buzz

写一个程序,输出从 1 到 n 数字的字符串表示。
1.如果 n 是3的倍数,输出“Fizz”;
2.如果 n 是5的倍数,输出“Buzz”;
3.如果 n 同时是3和5的倍数,输出 “FizzBuzz”。

示例:

n = 15,

返回:
[
    "1",
    "2",
    "Fizz",
    "4",
    "Buzz",
    "Fizz",
    "7",
    "8",
    "Fizz",
    "Buzz",
    "11",
    "Fizz",
    "13",
    "14",
    "FizzBuzz"
]

js解决办法:

/**
 * @param {number} n
 * @return {string[]}
 */
// 思路:取模然后字符串拼接
var fizzBuzz = function(n) {
    var transStrList = [];
    if (n < 1) {
        return transStrList;
    }
    for (var i = 1; i <= n; i++) {
        var newStr = "";
        if (i%3 == 0) {
            newStr += "Fizz";
        }
        if (i%5 == 0) {
            newStr += "Buzz";
        }
        if (newStr == "") {
            newStr = i.toString();
        }
        transStrList.push(newStr);
    }
    return transStrList;
};

运行结果截图:
初级算法探索——数学篇(一)_第1张图片

执行耗时:
初级算法探索——数学篇(一)_第2张图片

你可能感兴趣的:(算法)