故障键盘(双端队列模拟)
发布时间
阅读量:
阅读量
文章结构概览
-
- 1. 课题出处
- 2. 课题分析
- 1. 课题出处
1. 题目来源
链接:2810. 故障键盘
2. 题目解析
这是一道较为直观的题目,但需留意处理过程中所耗费的时间。
方案一:
- 采用直接排序的方式进行处理即可。
方案二:
- 利用双端队列结构,当未遇到字符 i 时,可按顺序将字符添加至队列末尾,即实现向右扩展。
- 当遇到字符 i 时,则需调整方向,改为向左扩展。
方案二具有较高的可行性,但在具体实现时也应注意代码的编写方式。
- 时间复杂度 :O(n)
- 空间复杂度 :O(1)
方案一:
class Solution {
public:
string finalString(string s) {
string res = "";
for (char c : s) {
if (c == 'i') reverse(res.begin(), res.end());
else res += c;
全部评论 (0)
还没有任何评论哟~
