Skip to content

chenxi-null/leetcode

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

本人的 leetcode 刷题记录 📝 语言: Java ☕️

目录说明

题解代码分布在两个地方:

  1. 一部分题解在 src/main/java 里,src/main/test 是对应的测试用例,这部分代码可以通过 maven (如 mvn clean test) 执行

  2. 另一部分题解在 src/main/leetcode/editor/cn 里, 是 IntelliJ-IDEA leetcode 插件生成的文件格式,是另一份题解代码

题型整理

  • Sliding Window | Two Pointers
  • Slow and fast pointers
  • DP
  • Backtracking
  • DFS
  • BFS
  • Linked List
  • Tree
    • traverse tree in pre/in/post order
    • Binary Search Tree
  • Graph
    • Topological sorting
  • UnionJoinSet
  • Sorting
  • MISC
    • array | string
    • queue & stack
    • bit manipulation
      • xor

解题模版

Sliding Window

int l = 0; 
int r = 0; // inclusive
for (; r < n; r++) {
    // add into window
    update state

    while (l < r && statisfied) {
        update the answer

        // remove from window
        update state
        l++;
    }
}
int l = 0; // inclusive
int r = 0; // exclusive
while (l < n) {
    if (!satisfied) {
        // add an element into window
        r++;
        update satisfied-state
    }    

    while (l < r && satisfied) {
        update the answer

        // remove the left-most element from window
        update satisfied-state
        l++;
    }
}

Backtracking

Tags

在代码里标注的一些 tag:

#[WA]     // 错误记录📝,包括本地调试时发现的错误和提交后发现的错误❌,错误类型包括未考虑边界条件、审题错误、一些低级的编码错误等等
#[Better] // 更好的解法
#[Share]  // 其他人分享的题解
#[Other]  // 其他解法,比如有的题目既可以用 DP 解,又可以用 sliding window 解
#[Trying] // 尝试中的题目

Research

N-Sum

https://en.wikipedia.org/wiki/3SUM

DP 股票问题

six kinds of buy-and-sell-stocks

前缀和 & 查分

前缀和定义

前缀和 & 差分 & 二维前缀和 & 互斥原理

前缀和、二维前缀和与差分的小总结


待解决

About

My LeetCode Problems' Solutions

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published