Tip
labuladong 的刷题全家桶 由学习网站、《算法秘籍》《刷题笔记》两本 PDF、Chrome/vscode/Jetbrain 三个不同平台的刷题插件组成,致力于为大家提供最丝滑的刷题体验。公众号后台回复关键词「全家桶」即可获取下载和使用手册。
由于我的 Chrome 刷题插件 收到很多小伙伴的好评,不过有的小伙伴反馈不喜欢在网页刷题,所以我就开发了 JetBrains 刷题插件,提供和 Chrome 插件类似的功能,大家可以在 JetBrains 全家桶的所有 IDE(比如 Intellij,Pycharm 等等)中刷题。

视频介绍
最近录了一个视频介绍 Jetbrains 插件的主要功能,喜欢看视频的读者可以去 B 站观看:
使用指南
基本功能
本插件基于开源插件 LeetCode Editor 开发,所以继承了该插件的所有功能,比如 LeetCode/力扣 账号的登录、题目搜索、代码的测试和提交、自定义代码模板等,说明文档如下:
https://github.com/shuzijun/leetcode-editor/blob/master/README_ZH.md
除了 LeetCode Editor 的基本功能,我还添加了很多实用的功能,下面简单介绍一下。
题解/思路辅助刷题
登录成功后,有我的题解或思路的题目会标记 ✨:

点开带 ✨ 标记的题目详情页会显示「labuladong 题解」和「labuladong 思路」:

代码图片注释
「labuladong 思路」中的代码支持直接复制,且代码中的小灯泡图标会弹出图片辅助理解代码逻辑:

算法可视化面板
「labuladong 思路」展开后,解法代码下方会显示一个可交互的算法可视化面板,帮助理解算法的执行过程:

可视化面板的具体功能请参考 算法可视化面板简介。
用一个简短的 GIF 看下这个插件有多好用:

常见问题
中文乱码?
对于比较新的 IDE 版本和操作系统来说,一般不会出现这个问题。如果出现了,可以参考 这个帖子 修改 IDE 的编码为 utf-8。
题目页面会突然变成空白?
你的 IDE 是否已经安装使用了很久?只有 IDE 重度使用者才会遇到这个 bug,原因很难排查,大概是 IDE 升级过程中的某些缓存/内部配置的问题导致的。一个最简单的解决办法是:去官网重新下载最新版 IDE,覆盖安装本地的 IDE(不用担心,并不会覆盖已有的配置),这样一来所有问题都消失了。
题目列表没有 ✨ 标记?
如果登录账号超过一分钟,题目列表还没有出现 ✨ 标记,可以点击工具栏最右侧的公众号图标手动刷新 labuladong 的题解数据:

等待十几秒左右就会看到通知栏显示「手动刷新 labuldong 数据成功」,✨ 标记就会出现。
如果依然没有出现,可能是网络问题。因为默认优先去 GitHub 上拉取数据,国内访问可能不稳定,可以在设置中修改 dataSource
到国内的 Gitee 源:

没有代码自动补全?
代码补全是 IDE 的基础功能,和插件无关。如果没有代码补全,可能是你的 IDE 没有配置好,或者是你的代码文件无法被 IDE 识别。
比如对于 Go 语言来说,需要在代码文件的第一行加上 package main
才能被 Goland IDE 识别,你可以使用 Code Template 功能来自动添加这一行。
类似的,再比如 Java 文件,需要在一个项目中才能被 IDE 识别。你可以把 TempFilePath
设置为你的项目路径,并设置 Code Template 自动添加 package 名称,这样代码文件就会被保存到项目中,IDE 就能识别并给出代码补全了。
没有代码提交按钮?
目前插件没有很好地适配新 UI,如果你使用的 Jetbrain 新 UI,可能找不到代码提交按钮。你可以使用右键进行代码提交:

安装方式
注意
注意:由于本插件基于 LeetCode Editor 开源插件改写:
https://github.com/shuzijun/leetcode-editor
所以如果你之前安装了 Leetcode Editor 插件,需要先将其卸载,否则会因为命令名称相同而导致冲突。本插件的功能为原插件的超集,请放心,之前的刷题代码文件都不会丢失。
我的插件全名为「LeetCode with labuladong」,在 JetBrains 系列 IDE 的插件商店中搜索关键词「labuladong」即可下载:

如果无法搜索到插件,可能是网络的问题。可以在 JetBrains 插件网页端按照指示下载安装:
https://plugins.jetbrains.com/plugin/19317-leetcode-with-labuladong
更新方式
JetBrains 家的 IDE 会自动检测更新,有更新时会有提示。建议及时更新最新版,以获得最流畅的体验。
更新日志
详见 Jetbrain 插件更新日志。
bug 反馈
如果你在使用中遇到问题,可以在这里按要求反馈 bug,我会定期回复和处理:
https://github.com/labuladong/fucking-algorithm/discussions/939
共同维护高质量学习环境,评论礼仪见这里,违者直接拉黑不解释