題目:
請實現乙個函式用來找出字元流中第乙個只出現一次的字元。例如,當從字元流中只讀出前兩個字元"go"時,第乙個只出現一次的字元是"g"。當從該字元流中讀出前六個字元「google"時,第乙個只出現一次的字元是"l"。
如果當前字元流沒有存在出現一次的字元,返回#字元。
思路一:
雜湊**:
class
solution
:# 返回對應char
def__init__
(self)
: self.s =
'' self.dic =
def(self)
:# write code here
for i in self.s:
if self.dic[i]==1
:return i
return
'#'def
insert
(self, char)
:# write code here
self.s += char
if self.s[-1
]not
in self.dic:
self.dic[self.s[-1
]]=1
else
: self.dic[self.s[-1
]]+=1
思路二:
陣列+佇列(也算一種雜湊)
**:
class
solution
:# 返回對應char
def__init__
(self)
: self.arr =[0
]*128 self.queue =
def(self)
:# write code here
while self.queue and self.arr[
ord(self.queue[0]
)]>
1: self.queue.pop(0)
return self.queue[0]
if self.queue else
'#'def
insert
(self, char)
:# write code here
self.arr[
ord(char)]+=
1if self.arr[
ord(char)
]<
2:
字元流中第乙個不重複的字元
請實現乙個函式用來找出字元流中第乙個只出現一次的字元。例如,當從字元流中只讀出前兩個字元 go 時,第乙個只出現一次的字元是 g 當從該字元流中讀出前六個字元 google 時,第乙個只出現一次的字元是 l include include using namespace std 找出輸入流中的第乙個...
字元流中第乙個不重複的字元
題目 請實現乙個函式用來找出字元流中第乙個只出現一次的字元。例如,當從字元流中只讀出前兩個字元 go 時,第乙個只出現一次的字元是 g 當從該字元流中讀出前六個字元 google 時,第乙個只出現一次的字元是 l 輸出描述 如果當前字元流沒有存在出現一次的字元,返回 字元。思路 用雜湊表來儲存字元在...
字元流中第乙個不重複的字元
請實現乙個函式用來找出字元流中第乙個只出現一次的字元。例如,當從字元流中只讀出前兩個字元 go 時,第乙個只出現一次的字元是 g 當從該字元流中讀出前六個字元 google 時,第乙個只出現一次的字元是 l 如果當前字元流沒有存在出現一次的字元,返回 字元。思路 用乙個容器map計數 class s...