昨天同事給我看了一道面試題目,說的是給任意乙個字串,比如'aaaabbccazzggggg',然後寫乙個函式,最後將字串輸出為a4b2c2a1z2g5。起初自己想偏了,想用遞迴來做,想的相對比較複雜。(遞迴應該是可以的,有時間再好好研究一下)。後來重新整理一下思路,很快就寫出來了。php**如下:
<?php
function test($str);//第乙個字元
$arrcount[$key] = 1;//與第一字元相對於的數量
$length = strlen($str);
for ($i=1;$i
$arrcount[$key] = 1;}}
$count = count($arrchar);
$return_str = '';
for($i = 0; $i < $count; $i++)
return $return_str;
}$str = test('aaaabbccazzggggg');
echo $str;exit;
同事自己也寫了乙個,看上去比我寫的簡單:
但發現他這個寫法是有問題的,只是對連續的字串去重和統計,後面相同的被丟棄了。
後面要研究一下遞迴的寫法。
String 字串 數目統計
function strlen str if str nil then return 0 endreturn string.len string.gsub str,128 255 128 255 128 255 endlocal str abc我1234 local len strlen str p...
字串中相同且長度最長的字串
題目出自 程式設計師面試寶典 第三版 p226頁 面試例題2 輸入一行字串,找出其中出現的相同且長度最長的字串,輸出它及首字元的位置。例如 yyabcdabjcabceg 輸出結果應該為abc和3。這個題目存在乙個歧義,例如如果測試字串為aaaaaa,我一開始以為結果是長度為3的aaa,原來正確答案...
NBUOJ 1969 統計元字串數目 字串處理
23世紀的一天,甬江邊出現了白鷺外的一種新品種,雄鳥非常愛惜雌鳥,所以它們採用一種集體一字型飛行方式,用a代表雌鳥,b代表雄鳥,他們總是排成a,aba,ababa,abababa,abababababa 的形式,這些一起飛的鳥稱為乙個飛行單元,但在某一天,你看到了天上上百萬隻鳥一字型飛過,那麼請你數...