下面有没有更优雅的方法来实现这个:输入:array=[1,1,1,0,0,1,1,1,1,0]输出:4我的算法:streak=0max_streak=0arr.eachdo|n|ifn==1streak+=1elsemax_streak=streakifstreak>max_streakstreak=0endendputsmax_streak 最佳答案 类似于w0lf'sanswer,但通过从chunk返回nil来跳过元素:array.chunk{|x|x==1||nil}.map{|_,x|x.size}.max
使用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次,但我是在最长的一次之后)。到目前为止,我已经写了:functionstreak(arr){vari,temp,streak,length=arr.length;for(i=0;i我知道我需要某种方式来了解我在发现事件时离开的地方,但我感觉有点卡住了。有什么建议吗?