如何在2022版本的IDEA中安装并使用LeetCode插件来刷Java面试题?
最编程
2024-08-04 20:35:57
...
1. 版本环境
本人使用的是IDEA 2022专业版,如图
插件是labuladong大佬修改后的LeetCode插件,特点是可以看见他发出的独特解题思路!
2. 安装
2.1 创建项目
- 打开IDEA并创建空项目,如图
2.2 安装插件
- 右键项目打开设置settings,如图
- 在设置中选择插件Plugins并在市场Marketplace中搜索Leet,可看到插件,点击install安装并重启idea,本人已安装便不再安装!
3. 配置插件
3.1 打开插件
重启项目后可在项目右下角看到插件出现,如图
3.2 配置环境
- 打开插件后找到设置,如图
- 设置相关信息,如URL网址
leetcode.cn
或者leetcode.com
等信息,如图
其中:- URL:力扣网址
- CodeType:刷题用的语言,本人这里是java
- LoginName以及Password是登录力扣的账号密码
- TempFilePath: 是刷题代码存在的项目位置,选择刚创建项目或想要存放位置
- 设置插件代码模板,如图
其中:- Code FileName:生成代码文件名,
$!velocityTool.camelCaseName(${question.titleSlug})
- Code Template:本地测试代码,如下
${question.content} package LeetCode.editor.cn; //Java:${question.title} public class $!velocityTool.camelCaseName(${question.titleSlug}){ public static void main(String[] args) { Codec codec = new $!velocityTool.camelCaseName(${question.titleSlug})().new Codec(); // TO TEST } ${question.code} }
- TemplateConstant:模板所用变量介绍
- Code FileName:生成代码文件名,
- 设置好后点击apply应用即可,然后可在项目视图中看到生成文件夹,如图
4.使用
4.1 获取力扣题目
- 登录插件,打开插件后点击登录按钮,如图
其中按钮左到右依次为:- 登录:登录到力扣网
- 退出或注销:退出登录的账号
- 刷新问题:即获取题目
- 挑选一个:任意随机选中一个题目
- 搜索:可按照分类category,列表Lists,难度Difficulty,状态Status以及标签Tags进行条件查询,和网站版类似
- 进度查看:可查看目前刷题进度
- 设置
- 清除缓存
- 使用帮助
- 手动刷新数据
- 刷新题目,点击左起第三个图标即可,然后会出现题目,如图
- 拉取到本地,选择某一题目后双击题目即可将拉取,本人选择得是297二叉树序列化与反序列化,读者可自行选择,操作类似,如下图
- 设置SDK环境,并将src设置为根目录,设置后解决文件投标橙色J变为正常C,如图
4.2 编写代码
- 编写相关数据结构,这里需要用到TreeNode,如图
- 编写核心代码,在所示区域,和网站刷题区域一样,如图
这里已写好,不在展示! - 编写本地测试工具,需要用到将控制台输入数据转换为编码所需数据,这里仅仅将输入的root=[1,2,3,null,null,4,5]进行转换,如下:
public class TestInput {
public Logger log = Logger.getLogger(TestInput.class.getName());
/**
*用于将控制台输入数据转换为测试代码输入参数
**/
public TreeNode getTreeNodeInputExamples(){
Scanner scanner = new Scanner(System.in);
log.info("输入测试用例,用,号隔开!");
String line = scanner.nextLine();
String[] lines = line.split(",");
LinkedList<String> nodes = new LinkedList();
for (String s : lines) {
nodes.addLast(s);
}
return getTreeNode(nodes);
}
private TreeNode getTreeNode(LinkedList<String> nodes){
if(nodes.isEmpty()) return null;
String node = nodes.removeFirst();
if("null".equals(node))
{
return null;
}
TreeNode root = new TreeNode(Integer.parseInt(node));
root.left = getTreeNode(nodes);
root.right = getTreeNode(nodes);
return root;
}
- 测试本地代码,在main函数中进行测试编写代码,如下
public static void main(String[] args) {
Codec codec = new SerializeAndDeserializeBinaryTree().new Codec();
TestInput testInput = new TestInput();
TreeNode root = testInput.getTreeNodeInputExamples();
String serialize = codec.serialize(root);
System.out.println(serialize);
codec.deserialize(serialize);
// TO TEST
}
- 接着可进行测试,断点调试或断言均可,结果如图
4.3 提交
- 本地测试没问题了可进行提交,右键选择插件菜单中的submit即可,如图
其中:- Run Code:类似于网站中的提交
- Test Case:执行所给测试用例
- Submit:将本地代码提交到网站并进行最终验证
- Sumissions:选择某一个时间段提交的代码进行查看
- open content:查看题目要求
- 提交后可选择最终提交,点击Run Code即可,当通过时会有提示,如图
特别注意:
要是提交后发现编译出错则需要重新拉取题目到本地并重新编写,不然代码无法提交导致编译出错!
上一篇: 图文详解:如何在IntelliJ IDEA中安装和使用插件?
下一篇: 如何在IDEA中安装插件?