技术栈

Python | Leetcode Python题解之第316题去除重复字母

Mopes__2024-08-03 8:53

题目:

题解:

python 复制代码
class Solution:
    def removeDuplicateLetters(self, s: str) -> str:
        vis = defaultdict(int)
        cnt = defaultdict(int)
        for ch in s: cnt[ch] += 1
        queue = []
        for ch in s:
            if vis[ch] == 0:
                while queue and queue[-1] > ch and cnt[queue[-1]]:
                    vis[queue.pop()] = 0
                if not queue or queue != ch: queue.append(ch)
                vis[ch] = 1
            cnt[ch] -= 1
        return "".join(queue)
上一篇:进程状态(一)---- 运行,阻塞,挂起
下一篇:自定义监控
相关推荐
hbwhmama
35 分钟前
python高级变量XIII
python
费弗里
1 小时前
Python全栈应用开发利器Dash 3.x新版本介绍(3)
python·dash
dme.
1 小时前
Javascript之DOM操作
开发语言·javascript·爬虫·python·ecmascript
加油吧zkf
2 小时前
AI大模型如何重塑软件开发流程?——结合目标检测的深度实践与代码示例
开发语言·图像处理·人工智能·python·yolo
t_hj
2 小时前
python规划
python
czhc1140075663
2 小时前
Linux 76 rsync
linux·运维·python
悠悠小茉莉
2 小时前
Win11 安装 Visual Studio(保姆教程 - 更新至2025.07)
c++·ide·vscode·python·visualstudio·visual studio
m0_62568655
3 小时前
day53
python
Real_man
3 小时前
告别 requirements.txt,拥抱 pyproject.toml和uv的现代Python工作流
python
百年孤独_
3 小时前
LeetCode 算法题解:链表与二叉树相关问题 打打卡
算法·leetcode·链表
热门推荐
01集群聊天服务器---MySQL数据库的建立02GPU 进阶笔记(二):华为昇腾 910B GPU03Coze扣子平台完整体验和实践(附国内和国际版对比)04使用Ruby接入实时行情API教程05Word粘贴时出现“运行时错误53,文件未找到:MathPage.WLL“的解决方案06扣子(coze)实战|我用扣子搭建了一个自动分析小红薯笔记内容的AI应用|详细步骤拆解07Java学习第十五部分——MyBatis08扣子空间的使用教程与大模型技术思考09DeepSeek各版本说明与优缺点分析10基于odoo17的设计模式详解---装饰模式