技术栈

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)
上一篇:进程状态(一)---- 运行,阻塞,挂起
下一篇:自定义监控
相关推荐
2301_76444133
2 小时前
LISA时空跃迁分析,地理时空分析
数据结构·python·算法
Billlly
3 小时前
ABC 453 个人题解
算法·题解·atcoder
chushiyunen
3 小时前
python rest请求、requests
开发语言·python
cTz6FE7gA
3 小时前
Python异步编程:从协程到Asyncio的底层揭秘
python
baidu_huihui
3 小时前
在 CentOS 9 上安装 pip(Python 的包管理工具)
开发语言·python·pip
南 阳
3 小时前
Python从入门到精通day63
开发语言·python
lbb 小魔仙
3 小时前
Python_RAG知识库问答系统实战指南
开发语言·python
FreakStudio
4 小时前
MicroPython LVGL基础知识和概念:底层渲染与性能优化
python·单片机·嵌入式·电子diy
素玥
4 小时前
实训5 python连接mysql数据库
数据库·python·mysql
热门推荐
01GitHub 镜像站点02一周AI热点速览(2026.03.31-04.06):GPT-6曝光、谷歌开源Gemma 4、资本狂飙与模型军备竞赛03OpenClaw 请求超时 llm request timed out 怎么解决?3 种方案实测,附完整排查流程04VMware Workstation Pro 17 虚拟机完整安装教程(2026最新)05AI 编程效率翻倍:Superpowers Skills 上手清单 + 完整指南06基于 Docker 部署 Hermes Agent 并接入飞书机器人的完整指南07UV安装并设置国内源08实测!Gemma 4 成功跑在安卓手机上:离线 AI 助手终于来了09Oh My Codex 快速使用指南10CodeBuddy与WorkBuddy深度对比:腾讯两款AI工具差异及实操指南