还是一个新手问题

在给定的字符数组中找出连续最长的数字串,并把这个串的长度返回

作者: LiveAsaMonster   发布时间: 2011-06-10

请给出测试数据

作者: xuzuning   发布时间: 2011-06-10

引用 1 楼 xuzuning 的回复:

请给出测试数据

老大果然热心!!假设是数组a吧,$a=array('27845615','47234567','78786781','60175123')

作者: LiveAsaMonster   发布时间: 2011-06-10

你给出的数据,结果为:234567这个串?长度是 6 , 是这个意思不??

作者: yangball   发布时间: 2011-06-10

引用 3 楼 yangball 的回复:

你给出的数据,结果为:234567这个串?长度是 6 , 是这个意思不??

s是的

作者: LiveAsaMonster   发布时间: 2011-06-10

PHP code

$a=array('27845615','47234567','78786781','60175123');

foreach($a as $v) {
    echo fountMax($v). '<br/>';
}

/*

3
6
3
3

*/
function fountMax($str)
{
    $arr = str_split($str);
    $max = 1;
    $tmp = 1;
    for($i=1; $i<count($arr); $i++) {
        if($arr[$i-1]+1 == $arr[$i]) {
            $tmp++;
            $max = $tmp>$max ? $tmp : $max;
        }
        else {
            $tmp = 1;
        }
    }
    return $max;
}



作者: yangball   发布时间: 2011-06-10