第一個只出現一次的字符

在一個字符串(1<=字符串長度<=10000,全部由字母組成)中找到第一個只出現一次的字符,並返回它的位置

<?php

function FirstNotRepeatingChar($str)
{
    if (!isset($str)||empty($str)){
        return -1;
    }
    //字符串轉爲數組
    $arr=str_split($str);
    //數組裏每個數出現的次數,構成數組b,鍵名爲字符,鍵值爲對應字符出現次數
    $b=array_count_values($arr);
    foreach ($b as $key=>$value) {
        //對出現一次的字符,取其在原數組的鍵名,多個出現一次,故取第一個
        if ($value==1){
            return array_keys($arr,$key)[0];
        }
    }
}
發佈了38 篇原創文章 · 獲贊 2 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章