第一个只出现一次的字符
题目要求:
在字符串 s 中找出第一个只出现一次的字符。如果没有,返回一个单空格。 s 只包含小写字母。
解题思路:
- 找到只出现一次的元素;
- 找到只出现一次元素的位置;
- 获取最先出现的位置上的元素;
- 没有则返回单空格。
题解代码:
详细步骤见注释
class Solution:
def firstUniqChar(self, s: str) -> str:
#字符串去重
ss = set(s)
#构建一个保存出现一次的元素位置
indexs = []
#遍历元素
for i in ss:
if s.count(i) ==1:
indexs.append(s.index(i))
#获取第一次出现的元素;没有返回单空格
if len(indexs) == 0:
return " "
else:
return s[min(indexs)]
leetcode地址:https://leetcode-cn.com/submissions/detail/150856351/
你就看看这速度击败了多少人。
(“An act of true love will thaw a frozen heart.(真爱之行,可化冰心)
”FIGHTING. . . .)