javascript - 对于数字数组,返回某个数字出现的次数
问题描述
我在一般情况下遇到问题,但已设法完成边缘情况。这是我到目前为止所拥有的(仅供参考,它是 comp 类的介绍,所以它是非常基本的东西):
export let count = (a: number[], b: number): number => {
let actually = 0;
for (let i = 0; i < a.length; i++) {
if (a[i] === b) {
return actually++;
}
if (a[i] !== b) {
return actually;
}
}
return actually;
};
输出:
general cases:
FAIL: count([10, 20], 20)
string
-- Expected: 1
string
-- Actually: 0
string
FAIL: count([20, 20], 20)
string
-- Expected: 2
string
-- Actually: 0
string
edge cases:
PASS: count([], 20)
string
PASS: count([10, 30], 20)
解决方案
当 you 时return
,您就在此处结束该功能。所以基本上,你的函数只查看第一个数字,如果匹配则返回 1,如果不匹配则返回 0。
如果您想计算在整个列表中看到该数字的次数,您应该增加actually
,而不是return
。
然后,在遍历完数组中的每个元素后,您可以 return actually
,它应该具有最终计数。
推荐阅读
- c++ - 在 QtCreator 中导入 OBJ 文件
- java - 如何使用 Jsoup (Java) 检索 Youtube 的自动完成结果?
- javascript - PolyLine 腿的单独着色
- java - 如何在spring sts中获取spring boot web项目的默认结构?
- c# - 属性映射 - 在 C# 中使用 Automapper 将 DateTime 映射到字符串,反之亦然
- python - 绘图大小随刻度字符数而变化
- flutter - 当我尝试插入 sqflite 数据库 Flutter-moor 时,如何文本字段始终返回 null
- angular - Angular - 如何在屏幕上显示保存数据的结果
- c# - 处理 JSON 错误仍将 ModelState.IsValid 设置为 false
- python - 如何将 gzip 输出重定向到 Popen 标准输入