4、编写函数,接收一个字符串,返回其中每个字符的最后一次出现,并按每个字符最后一次出现的先后顺序依次存入列表。例如,对于字符串’abcda‘的处理结果为[‘b’,’c’,’d’,’a’],而字符串’abcbda‘的处理结果为[‘c’,‘b’,,’d’,’a’]。
时间: 2024-12-20 15:20:11 浏览: 3
可以编写一个Python函数来实现这个功能。这里是一个简单的解决方案:
```python
def last_occurrences(s):
char_dict = {}
for char in s[::-1]: # 遍历字符串从后往前,找到每个字符的最后位置
if char in char_dict:
char_dict[char].append(len(s) - s.index(char)) # 更新该字符的位置到列表中
else:
char_dict[char] = [len(s) - s.index(char)] # 对于新遇到的字符,创建新的列表记录位置
result = list(char_dict.values()) # 将值列表转换为字符列表
return sorted(result, reverse=True) # 按照元素出现的倒序排序并返回
# 测试例子
print(last_occurrences('abcda')) # 输出:['b', 'c', 'd', 'a']
print(last_occurrences('abcbda')) # 输出:['c', 'b', 'd', 'a']
阅读全文