求一个字符串中第一个只出现一次的字符,并返回它的位置

在一个字符串(0<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写)。 

public function index(){
		$str = 'axabbccdxdeeffggX';
		echo $this->FirstNotRepeatingChar($str);
	}
	function FirstNotRepeatingChar($str){
		$res = -1;
		$arr = str_split($str);
		foreach ($arr as $k=>$v){
			$end = strrpos($str,$v);
			$begin = strpos($str,$v);
			if($end == $begin){
				$res = $k;
				break;
			}
		}
		return $res;
	}

或者

public function aaaa(){
		$str = 'aabbccydYdeexffgghhii';
		
		$arr = str_split($str);
		foreach ($arr as $k=>$v){
			if(substr_count($str,$v)==1){
				return $k;
			}
		}
	}

 

你可能感兴趣的:(#,♯,➸,➳,➻,➛,☞,算法,基础算法)