searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

计数器-算法学习

2023-07-13 06:05:55
1
0

题目详情:
请你编写并返回一个 计数器 函数,它接收一个整型参数 n 。这个 计数器 函数最初返回 n,每次调用它时返回前一个值加 1 的值 ( n ,  n + 1 ,  n + 2 ,等等)。


示例:
输入:
n = -2
["call","call","call","call","call"]
输出:[-2,-1,0,1,2]
解释:counter() 最初返回 -2。然后在每个后续调用后增加 1。

解题思路:
首先定义一个名为 createCounter 的函数,它接收一个整型参数 n。在函数内部,我们返回一个匿名函数,该匿名函数使用闭包保存了外部函数的参数 n。

每次调用计数器函数时,闭包中的变量 n 会自增 1,然后返回更新后的值。


代码实现:
function createCounter(n) {
    return function () {
        return n++;
    }
}

// 示例输入
const n = -2;
const calls = ["call", "call", "call", "call", "call"];

// 创建计数器函数
const counter = createCounter(n);

// 调用计数器函数多次,并将结果存储在数组中
const output = calls.map(() => counter());

// 输出结果
console.log(output);

0条评论
作者已关闭评论
t****m
98文章数
1粉丝数
t****m
98 文章 | 1 粉丝
t****m
98文章数
1粉丝数
t****m
98 文章 | 1 粉丝
原创

计数器-算法学习

2023-07-13 06:05:55
1
0

题目详情:
请你编写并返回一个 计数器 函数,它接收一个整型参数 n 。这个 计数器 函数最初返回 n,每次调用它时返回前一个值加 1 的值 ( n ,  n + 1 ,  n + 2 ,等等)。


示例:
输入:
n = -2
["call","call","call","call","call"]
输出:[-2,-1,0,1,2]
解释:counter() 最初返回 -2。然后在每个后续调用后增加 1。

解题思路:
首先定义一个名为 createCounter 的函数,它接收一个整型参数 n。在函数内部,我们返回一个匿名函数,该匿名函数使用闭包保存了外部函数的参数 n。

每次调用计数器函数时,闭包中的变量 n 会自增 1,然后返回更新后的值。


代码实现:
function createCounter(n) {
    return function () {
        return n++;
    }
}

// 示例输入
const n = -2;
const calls = ["call", "call", "call", "call", "call"];

// 创建计数器函数
const counter = createCounter(n);

// 调用计数器函数多次,并将结果存储在数组中
const output = calls.map(() => counter());

// 输出结果
console.log(output);

文章来自个人专栏
js
57 文章 | 1 订阅
0条评论
作者已关闭评论
作者已关闭评论
0
0