可以在IDE上刷题的插件leetcode-editor发布后,虽然可以满足部分刷题的需求,但是依旧没有解决如何在本地调试的问题。有时解决一道题目时,陷入一个思维误区,但是不知道问题在哪,这时候最好的方法就是能够debug一下。这期更新的内容就是如何能在本地调试代码,而且可以直接提交到leetcode上。

如果没有使用过这个IDE插件的可以先看一下这篇文章《IDE 刷题工具 leetcode editor》。在最新的插件版本5.0上,增加了配置模版,可以自定义生成代码格式。具体效果可以参考一下GIF。

demo

以JAVA为例(其他语言的可以根据语言规则进行配置),如果想要运行一个java,需要先配置一个工程。我们可以创建一个用来刷题调试的工程(参考),将配置中缓存的目录设置到这个工程中的src下的目录,这是拉取的题目文件就会放到此目录下,可以在工程中看到。解决了文件问题,就需要解决文件名称和类的格式问题了,通过新增的配置,可以自定义生成,下面详细介绍下可配置项有哪些。

  • Custom code template: 开启使用自定义模板,否则使用默认生成格式
  • CodeFileName: 生成文件的名称,默认为题目标题
  • CodeTemplate: 生成题目代码的内容,默认为题目描述和题目代码
  • TemplateConstant: 模板常用变量
    • ${question.title}:题目标题,例如:两数之和
    • ${question.titleSlug}:题目标记,例如:two-sum
    • ${question.frontendQuestionId}:题目编号,例如:1
    • ${question.content}:题目描述内容
    • ${question.code}:题目代码部分
    • $!velocityTool.camelCaseName(str):一个函数,用来将字符串转化为驼峰样式

在上述的介绍中可以看到,通过一些常量,可以根据一定的规则配置符合语言规范的模版,下面通过JAVA的配置进行详细说明。

CodeFileName:

$!velocityTool.camelCaseName(${question.titleSlug})

上面的配置是以题目的标识(question.titleSlug)作为文件名称,但是题目标识中包含一些数字其他符号,并且不是驼峰的命名规则,不符合JAVA的规范,所以用工具类(velocityTool.camelCaseName)进行转换一下,就得到例如:TwoSum.java的文件了。

TemplateConstant:

${question.content}package com.shuzijun.leetcode.editor.en;public class $!velocityTool.camelCaseName(${question.titleSlug}){public static void main(String[] args) {Solution solution = new $!velocityTool.camelCaseName(${question.titleSlug})().new Solution();}${question.code}}

上面配置的生成文件内容,首先question.content描述了题目的内容,然后配置了包名,这个包路径需要根据自己的工程进行配置。根据生成的文件名称,定义了一个类,这个类的名称与文件名保持一致,为了方便调试,默认生成了一个main方法,并创建了一个实例。下方的question.code就是从leetcode拉取的代码了,题目的解法需要写在这个里面。

需要注意的是,在生成的代码里包含两个注释:

  • leetcode submit region begin(Prohibit modification and deletion):提交到leetcode进行验证的代码开始标记
  • leetcode submit region end(Prohibit modification and deletion):提交到leetcode进行验证的代码结束标记

这两个注释标注了需要提交到leetcode的区域,这两行注释是不能被删除或者修改的,否则无法识别出提交的内容,如果多提交了其他代码,leetcode会出现解答失败,同样区域内不能出现与解题无关的内容,例如import java.util.Arrays;

以上就是如何在本地调试的内容了,如果有什么问题或者好的想法,欢迎交流。

arcgis中editor在哪_leetcode 刷题工具 leetcode-editor 本地调试篇相关推荐

  1. IDEA 的 LeetCode 刷题插件 leetcode editor

    1.安装 2.配置(登录) 若需改动模板要把这里打勾✔ 参考这种模板比较方便调试和提交: CodeFileName: P${question.frontendQuestionId}$!velocity ...

  2. 子集和问题 算法_LeetCode刷题实战90:子集 II

    算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试.所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 ! 今天和大家 ...

  3. IntelliJ IDEA 刷题利器 LeetCode 插件

    IntelliJ IDEA 刷题利器 LeetCode 插件 IDEA整合LeetCode插件,可以在 IDEA 本地编辑代码并且运行提交,还能关联自己的账号,非常实用. 下载安装 安装好后所在的位置 ...

  4. 漫画:小白为了面试如何刷题?(呕心沥血算法指导篇)

    来自:小浩算法 三年高考,五年刷题.leetcode不算从其他各处收录的题目,单就自己的题库,总共有1600+,如果按照每天刷一道的话,总共需要5年.那我们真的需要把这些题目全部刷完吗?如果不是,刷多 ...

  5. prokiller 刷题工具,快速简单自定义题库

    problem-killer (简单易用的刷题工具) 基于vue+element实现,所有数据存在浏览器端. 不需要数据库,不需要服务器. 在线体验 开源地址:github.com/serfend/p ...

  6. 计算机一级ps哪里有刷题的,同事用Excel做了一个刷题工具,看完我就跪了!

    本文作者:绿水零 本文编辑:竺兰 PS: 文末可获取配套练习文件,一定要看到最后哦~ 马上就到年末了,等着你的除了过年,还有考试. 被考试什么的支配的,可不只有中小学生,因为还有大学考试.研究生考试. ...

  7. 刷题网站LeetCode/牛客/LintCode介绍

    首先说明,这绝不是刷题网站软文啊.作为一个注册csdn有7年的用户,还一直没有在csdn贡献自己的文章,在这里拜读了不少,但无论技术还是思想,不输出就无法内化成自己的东西.现在也push自己去输出啦~ ...

  8. list元素求和_LeetCode刷题实战82:删除排序链表中的重复元素 II

    算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试.所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 ! 今天和大家 ...

  9. leetcode怎么用时间刷_LeetCode刷题专栏第一篇--思维导图时间安排

    昨天是元宵节,过完元宵节相当于这个年正式过完了.不知道大家有没有投入继续投入紧张的学习工作中.年前我想开一个Leetcode刷题专栏,于是发了一个投票想了解大家的需求征集意见.投票于2019年2月1日 ...

  10. leetcode 高薪_LeetCode刷题实战69:x 的平方根

    算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试.所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 ! 今天和大家 ...

最新文章

  1. 2013 ACM/ICPC Asia Regional Chengdu Online We Love MOE Girls 字符串STL 的应用
  2. 从零开始学习OpenCL开发(一)架构
  3. matlab lpfilter.m,histroi/statmoments/lpfilter/dftuv的Matlab程序
  4. 实战_01_Spring SpringMVC 整合Mybaits
  5. python数列求和程序_python实现有趣的数学逻辑程序
  6. 【kafka】kafka 启动 Version `123123` is not a valid version
  7. javascript实现silverlight pivotViewer控件
  8. python multiprocessing 批量下载图片+tqdm
  9. UJAM Beatmaker VICE for Mac(80年代风格鼓机插件)
  10. web form常用控件
  11. 群体智能优化算法之蝙蝠算法(Bat Algorithm,BA)
  12. 开源免费的录屏gif工具
  13. NISP第一讲信息安全和网络空间安全
  14. Topcoder参赛入门
  15. SpingMVC文件下载,ie浏览器提示无法打开该Internet站点.请求的站点不可用,或找不到.请以后再试.
  16. mac转换助理安装Windows11
  17. 电脑计算机word2007的介绍,word2007电脑版
  18. 外贸人如何从SiteGround购买建站外贸主机
  19. 微信HOOK 删除好友
  20. google的广告页面代码的js

热门文章

  1. 2022美国大学生数学建模竞赛C题思路
  2. 【TSP】基于matlab GUI遗传算法求解旅行商问题【含Matlab源码 1333期】
  3. 【图像压缩】基于matlab行程编码(RLE)图像压缩【含Matlab源码 404期】
  4. 【肌电信号】基于matlab GUI脉搏信号脉率存档【含Matlab源码 237期】
  5. python一个类有几个实例对象_Python用一个类实例来解开一个对象
  6. Apache服务器和tomcat服务器有什么区别(转)
  7. Simple Mail Transfer Protocol --- SMTP协议
  8. 把路由器配置成DHCP服务器,并确保路由功能。
  9. 3-12岁经典必读书
  10. hdu 2736 Average distance