检测整数数组中的连续模式

时间:2016-05-28 06:38:44

标签: java arrays

在你指责这个帖子是重复之前,只要意识到(从我已经看到的)在String数组中找到模式,这些模式似乎有很多额外的代码,不需要我的目的。 / p>

如何在int数组中找到模式?
如果我有一个大于500的整数数组,我需要连续测试~4个不同值的模式。这是一个很好/最快的方法吗?

以下是一个例子:

17,39,78,324,43,33,234,99,34,555,39,78,324,43,45,92

很难说,但数字39,78,324,43按顺序重复两次。这就是算法需要能够检测的内容。

提前致谢!

2 个答案:

答案 0 :(得分:0)

你想要的结果可以有2个结果。

如果您只需要打印每个数字重复的次数,您可以创建2个for循环,这些循环嵌套并遍历内部循环中的整个数组,以找到外部循环的匹配整数,一旦完成,打印整数重复的次数。

如果必须存储重复整数的次数,则可以执行相同的过程,但这次需要存储数字以及在数组中重复的次数然后打印它。

另外请记住,在这两种情况下,您都需要创建一个数组,用于存储已计数的数字,以便您不再计算它们。

希望这会有所帮助:)

答案 1 :(得分:0)

据我了解你的问题,最简单的解决方案是(尽管你可以提高效率)

controller/site

public function actions()
{
     $url = Url::remember();
    return [
        'error' => [
            'class' => 'yii\web\ErrorAction',
        ],

       $this->render('error',['url'=>$url]), 
    ];
}

我的输出就像这个 /views/site/error.php <p> <?= Html::a('go back', [$url)?> </p>