在Clion上调试LeetCode代码
在leetcode上做题调试起来总有些不方便,所以查阅了一些资料后,按以下配置,自我感觉效率还行,分享给大家。祝大家刷题愉快。并附上自己整理的leetcode400题题表。
源码:Git Hub地址
Leetcode400题:notion地址
依赖Clion插件
使用方法
1.安装上述插件
打开CLion设置,在Plugins
- 搜索
leetcode
即可找到插件leetcode editor
,并安装。 - 搜索
Single File
即可找到插件C/C++ Single File Execution
,并安装。
2.配置LeetCode插件
打开 首选项(Preferences)=>Tools=>leetcode plugin
自行设置登录名与密码
- TempFilePath :设置到项目根目录。
- Cutstom Temlate :自定义模板,打开。
- CodeFileName :Leetcode文件名称,建议设置为
$!{question.frontendQuestionId}-${question.titleSlug}
- CodeTemplate :重点,关系到生成的文件能否一步运行,引入了项目中的库文件,包括基本的c,c++库,与别人实现的Leetcode链表与树。
${question.content}
\#include "include/headers.h"
using namespace std;
${question.code}
int main()
{
Solution s;
vector<int> data{7, 1, 5, 3, 6, 4};
//vector<int> ans = s.twoSum(data,11);
//cout << ans[0]<<ans[1]<<endl;
cout<<"Hello LeetCode"<<endl;
}
]
3.创建Leetcode文件,并使用C/C++ Single File Execution
创建启动项目
打开题目列表,双击题目,生成Leetcode临时文件。
在文件空白处,右键选择
Add executable for single c/cpp file
,会自动在根目录下的CMakeLists.txt
中创建可执行项目。修改
main()
后,运行或调试指定项目。
文件说明
include文件夹
包含了leetcode的链表与树。
CMakelist.txt
该项目有两个CMakelists.txt文件,一个位于根目录下,一个位于include文件夹中。
根目录/CMakeLists.txt
:
cmake_minimum_required(VERSION 3.9)
project(LeetCode)
set(CMAKE_CXX_STANDARD 11)
include_directories(${CMAKE_SOURCE_DIR}/include)
add_subdirectory(leetcode/editor/cn/include)
add_executable(1-two-sum leetcode/editor/cn/1-two-sum.cpp)
根目录/leetcode/editor/cn/include/CMakeLists.txt
:
aux_source_directory(. LEETCODE)
add_library(leetcode ${LEETCODE})
常见问题
1.创建的临时文件为java类型
解决办法:LeetCode插件设置中Code Type
选择为C++
2.执行Add executable for single c/cpp file
后,项目中没有创建临时文件
解决办法:LeetCode插件设置中将TempFilePath
设为本项目的根目录
3.执行Add executable for single c/cpp file
后,Run/Debug
中没有新的选项
解决办法:Clion打开根目录下的CMakeLists.txt
,打开自动刷新auto reload
。
或者设置中找到cmake页,打开Reload CMakeProject on editing CMakeLists.txt