MakerFace / leetcode

leetcode solution

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Leetcode模板

自己刷题可以先把src目录删掉。

  1. 目录结构

image-20221024213329264

  1. 使用方法

    创建题目:./create.sh 题号

    image-20221024213421322

    在当月/当日文件夹下生成源码和输入

  2. 在leetcode.cn中复制解决方案

  3. 在vscode中输入solution,然后回车。

    image-20221024213553818

    image-20221024213657745

    键入tab可跳转到上一行,调整输入。

    由于我使用了clangd插件,所以不用一个个手动导入头文件,它会根据具体使用情况自动导入。

    如果没有使用该插件,可以在.vscode/cpp.json.code-snippets自行加入#include <bits/stdc++.h>,自己修改author值。

    image-20221024214005582

  4. 从文件中按行读取输入

    如果多个输入就再读一行。

    • vector:在common/Vector.hpp中实现向量方法。

      输入auto nums = string2vector<string>(buf);,默认模板参数是int,int可不加。

    • list:在common/ListNode.hpp中实现链表。

      输入auto head = string2list(buf);

    • tree:在common/TreeNode.hpp中实现链表。

      输入auto root = string2tree(buf);

    • graph

      输入auto graph = string2graph(buf);

    输出直接使用cout

    需注意

    • 指针需要解引用,例如std::cout << *root << std::endl;
    • list,tree需要回收内存,delete_listdelete_tree

    image-20221024215810900

  5. 构建

    ./build.sh

  6. 执行

    bin/题目

  7. 分享给其他人

    ./export.sh

有问题可以反馈,邮箱:chenqi@imudges.com


PROJECT_PATHMAX_LINE_SIZE定义于项目根目录的CMakeLists.txt中。如果vscode的插件(C/C++插件)无法识别,使用如下方法解决。

image-20221024220154169

插件clangd可以正确识别:

image-20221024220324749

About

leetcode solution


Languages

Language:C++ 99.4%Language:Python 0.4%Language:CMake 0.1%Language:Shell 0.1%