其他分享
首页 > 其他分享> > 题目19

题目19

作者:互联网

删除字符串中出现次数最少的字符
    如果多个字符出现次数一样则都删除

    例子:
    输入
      abcdd
      字符串中只
     输出
      dd

    输入
      aabbccdd

    输出
      empty

      如果都被删除  则换为empty
<?php
$s=fgets(STDIN);
solution($s);

function solution($s)
{
    $s = str_split($s, 1);
    $cur = $s[0];
    $res[$cur]=1;
    for ($i = 1; $i < count($s); $i++) {
        if($s[$i]==$cur){
            $res[$cur]++;
        }else{
            $cur=$s[$i];
            $res[$cur]=1;
        }
    }
    $min=min($res);
    foreach ($res as $k=>$v){
        if($min==$v) unset($res[$k]);
    }
    if(count($res)==0) echo 'empty';
    $str='';
    foreach ($res as $k=>$v){
        for ($i=0;$i<$v;$i++) $str.=$k;
    }
    echo $str;
}

该代码可自行优化

标签:字符,题目,删除,19,res,次数,字符串,empty
来源: https://www.cnblogs.com/weiguomiao/p/16484862.html