请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符流中只读出前两个字符”go”时,第一个只出现一次的字符是”g”。当从该字符流中读出前六个字符“google”时,第一个只出现一次的字符是”l”。
输出描述:
如果当前字符流没有存在出现一次的字符,返回#字符
题解
使用索引数组
实现代码
global $result; //Init module if you need function Init(){ global $result; $result = []; } //Insert one char from stringstream function Insert($ch) { global $result; // write code here if(isset($result[$ch])){ $result[$ch]++; }else{ $result[$ch] =1; } } //return the first appearence once char in current stringstream function FirstAppearingOnce() { global $result; foreach($result as $k =>$v){ if($v ==1){ return $k; } } return "#"; }
如对本文有疑问, 点击进行留言回复!!
[ACTF2020 新生赛]Include 1【文件包含】【读取代码】
算法题解 - 牛客编程巅峰赛S1第6场 - 黄金&钻石&王者组
推荐一个程序员必备网站之一:Dev Hints ,非常实用!
网友评论