欢迎光临散文网 会员登陆 & 注册

2309. 兼具大小写的最好英文字母

2023-01-17 10:36 作者:目标力扣Knight  | 我要投稿

题意简述

返回给定字符串中同时出现大小写的字母,返回大写字母,若无则返回空字符串;

方法一:枚举 + 集合

枚举给定字符串中每一个元素,将其大写或者转换后的大写存入有序集合,若存在,返回集合中最后一个元素即可;

Python版本


C++版本


复杂度分析

  • 时间复杂度:O(N)。此处 n 指的是字符串 s 的长度。

  • 空间复杂度:O(C)。有序集合至多存储26个大写字母。


备注

  1. C++:

    1. 自带有序集合,无需使用普通字符容器再排序。但有序集合不具备下标索引能力;

    2. 有序集合的 set.end() 方法,它指向了集合最后一个元素的下一个元素,且为迭代器。因此需要prev()函数和解引用运算符;

    3. 对于转换大小写,既可以用 ASCⅡ作为中间变量进行转换,也可以直接调用 toupper(), tolower()函数;

  2. 可以使用哈希双向绑定,但对于做题而言,没有性价比,且仍然需要判断每一个是大写还是小写。


2309. 兼具大小写的最好英文字母的评论 (共 条)

分享到微博请遵守国家法律