查找数组中出现次数最多的相同数字

motoxer4533

使用JavaScript,我试图找到一种方法来查找数组中出现相同数字(在本例中为1)的时间最长。

例如,这是一个示例数组: [2,5,3,1,1,1,3,7,9,6,4,1,1,1,1,1,4,7,2,3,1,1,4,3]

我想编写一个返回“ 5”的函数,因为数字1连续出现5次。(它也连续发生3到2次,但我的出现时间最长)。

到目前为止,我已经写了:

function streak(arr) {
    var i,
        temp,
        streak,
        length = arr.length;

    for(i=0; i<length; i++) {
        if (arr[i] === 1) {
            streak += 1;
        } else {
            temp = streak;
            break;
        }
    }
}

我知道我需要某种方式来知道我发现哪里发生了什么,但是我感觉有点卡住了。

有指针吗?

罗比·阿夫里尔(Robbie Averill)

我已经稍微修改了您的功能。您需要将最高的条纹存储为与当前条纹分开的单独变量,并在循环中需要的地方覆盖它-最终在函数结尾处返回该变量。

function streak(arr) {
    var i,
        temp,
        streak,
        length = arr.length,
        highestStreak = 0;

    for(i = 0; i < length; i++) {
        // check the value of the current entry against the last
        if(temp != '' && temp == arr[i]) {
            // it's a match
            streak++;
        } else {
            // it's not a match, start streak from 1
            streak = 1;
        }

        // set current letter for next time
        temp = arr[i];

        // set the master streak var
        if(streak > highestStreak) {
            highestStreak = streak;
        }
    }

    return highestStreak;
}

var array = [2,5,3,1,1,1,3,7,9,6,4,1,1,1,1,1,4,7,2,3,1,1,4,3];

console.log(streak(array)); // 5

而且,如果您还想跟踪最高条纹,请在函数开始时定义另一个变量,在保存最高条纹时保存其值,然后将其作为数组返回:

    // set the master streak var
    if(streak > highestStreak) {
        highestStreakValue = temp;
        highestStreak = streak;
    }
}

return [highestStreak, highestStreakValue];


var array = [2,5,3,1,1,1,3,7,9,6,4,'a','a','a','a','a',4,7,2,3,1,1,4,3];
console.log(streak(array)); // [5, "a"]

演示都返回

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

查找数组中出现次数最多的相同数字

来自分类Dev

查找数组中出现次数最多的数字

来自分类Dev

ruby:查找数组中出现次数最多的项目,如果有

来自分类Dev

SQL查询以查找不嵌套的表中出现次数最多的值

来自分类Dev

查找字符串中出现次数最多的字符

来自分类Dev

SQL查询以查找不嵌套的表中出现次数最多的值

来自分类Dev

查找字符串中出现次数最多的字符

来自分类Dev

获取列表中出现次数最多的3个数字

来自分类Dev

获取矩阵行中出现次数最多的数字并连接结果

来自分类Dev

试图获得句子中出现次数最多的情态动词

来自分类Dev

C#:获取列表中出现次数最多的元素?

来自分类Dev

如何找到在python词典中出现次数最多的值?

来自分类Dev

如何获得集合中出现次数最多的值?

来自分类Dev

给定字符串中出现次数最多的词

来自分类Dev

查找数组中出现最多的数字 - C 问题

来自分类Dev

在“球拍”列表中查找出现次数最多的元素

来自分类Dev

查找数组中重复次数最多的算法

来自分类Dev

您如何找到MongoDB词典中出现次数最多的字段?

来自分类Dev

使用SQL搜索字符串中出现次数最多的值

来自分类Dev

如何找到列表中出现次数最多的两个字符串?

来自分类Dev

MySql:检索另一列中列中出现次数最多的值

来自分类Dev

选择在其他特定表中出现次数最多的行作为外键

来自分类Dev

Linq 分组依据并选择子组中出现次数最多的项目

来自分类Dev

检查哪个对象在列表中出现次数最多 C#

来自分类Dev

元素出现次数最多的列表

来自分类Dev

打印出现次数最多的素数

来自分类Dev

显示出现次数最多的组

来自分类Dev

查找数组中匹配次数最多(不匹配次数更少)的文档

来自分类Dev

查找哪个字符出现在字符串中的次数最多

Related 相关文章

  1. 1

    查找数组中出现次数最多的相同数字

  2. 2

    查找数组中出现次数最多的数字

  3. 3

    ruby:查找数组中出现次数最多的项目,如果有

  4. 4

    SQL查询以查找不嵌套的表中出现次数最多的值

  5. 5

    查找字符串中出现次数最多的字符

  6. 6

    SQL查询以查找不嵌套的表中出现次数最多的值

  7. 7

    查找字符串中出现次数最多的字符

  8. 8

    获取列表中出现次数最多的3个数字

  9. 9

    获取矩阵行中出现次数最多的数字并连接结果

  10. 10

    试图获得句子中出现次数最多的情态动词

  11. 11

    C#:获取列表中出现次数最多的元素?

  12. 12

    如何找到在python词典中出现次数最多的值?

  13. 13

    如何获得集合中出现次数最多的值?

  14. 14

    给定字符串中出现次数最多的词

  15. 15

    查找数组中出现最多的数字 - C 问题

  16. 16

    在“球拍”列表中查找出现次数最多的元素

  17. 17

    查找数组中重复次数最多的算法

  18. 18

    您如何找到MongoDB词典中出现次数最多的字段?

  19. 19

    使用SQL搜索字符串中出现次数最多的值

  20. 20

    如何找到列表中出现次数最多的两个字符串?

  21. 21

    MySql:检索另一列中列中出现次数最多的值

  22. 22

    选择在其他特定表中出现次数最多的行作为外键

  23. 23

    Linq 分组依据并选择子组中出现次数最多的项目

  24. 24

    检查哪个对象在列表中出现次数最多 C#

  25. 25

    元素出现次数最多的列表

  26. 26

    打印出现次数最多的素数

  27. 27

    显示出现次数最多的组

  28. 28

    查找数组中匹配次数最多(不匹配次数更少)的文档

  29. 29

    查找哪个字符出现在字符串中的次数最多

热门标签

归档