2019-08-16 剑指 字符流中第一个不重复的字符
作者:
mztkenan | 来源:发表于
2019-08-17 15:11 被阅读0次class Solution:
# 返回对应char
# restore=[-1 for i in range(257)] # 类变量导致会保存上一次实例化的内容,这里导致莫名的错误
# index=0
def __init__(self):
self.restore=[-1 for i in range(257)]
self.index=0
def FirstAppearingOnce(self):
min_v,min_i=1000000000000,258
for i in range(257):
if self.restore[i]>=0 and self.restore[i]<min_v :
min_v=self.restore[i]
min_i=i
if min_i==258:return '#' #记得这里特殊情况返回'#'
return chr(min_i)
def Insert(self, char):
if self.restore[ord(char)]==-1:
self.restore[ord(char)]=self.index
elif self.restore[ord(char)]>=0:self.restore[ord(char)]=-2 # 妈的,这里少了一个=,耽误五分钟
self.index += 1
本文标题:2019-08-16 剑指 字符流中第一个不重复的字符
本文链接:https://www.haomeiwen.com/subject/aadqsctx.html
网友评论