status
type
date
slug
summary
tags
category
icon
password
题目分类 和答案来自

Solutions(现在是1-1000)

 
每一个topic 划分出独立界面 每一个专题轮流做
Bit manipulation
Array
String
Linked List
Stack
Queue
Binary Heap
Tree
Hash Table
Math
Sort
 

Two Pointers

#
Title
Solution
Time
Space
Difficulty
Tag
Note
0015
O(n^2)
O(1)
Medium
Two Pointers
0016
O(n^2)
O(1)
Medium
Two Pointers
0018
O(n^3)
O(1)
Medium
Two Pointers
0019
O(n)
O(1)
Medium
0086
O(n)
O(1)
Medium
0141
O(n)
O(1)
Easy
0142
O(n)
O(1)
Medium
0143
O(n)
O(1)
Medium
0167
O(n)
O(1)
Medium
0209
O(n)
O(1)
Medium
Binary Search, Sliding Window
0259
O(n^2)
O(1)
Medium
🔒, LintCode
0283
O(n)
O(1)
Easy
0287
O(n)
O(1)
Hard
Binary Search, Two Pointers
0344
O(n)
O(1)
Easy
0345
O(n)
O(1)
Easy
0349
O(m + n)
O(min(m, n))
Easy
EPI
Hash, Binary Search
0350
O(m + n)
O(1)
Easy
EPI
Hash, Binary Search
0360
O(n)
O(1)
Medium
🔒
0424
O(n)
O(1)
Medium
Sliding Window
0457
O(n)
O(1)
Medium
0567
O(n)
O(1)
Medium
0611
O(n^2)
O(1)
Medium
0777
O(n)
O(1)
Medium
0826
O(mlogm + nlogn)
O(n)
Medium
0828
O(n)
O(1)
Hard
0844
O(m + n)
O(1)
Easy
0862
O(n)
O(n)
Hard
Mono Deque, Sliding Window
0876
O(n)
O(1)
Easy
0904
O(n)
O(1)
Medium
Sliding Window
0930
O(n)
O(1)
Medium
Sliding Window
0977
O(n)
O(1)
Easy
0992
O(n)
O(k)
Hard
Two Pointers, Sliding Window
<b><a href="#algorithms">⬆️ Back to Top</a></b>

Recursion

#
Title
Solution
Time
Space
Difficulty
Tag
Note
0095
O(4^n / n^(3/2)
O(4^n / n^(3/2)
Medium
0098
O(n)
O(1)
Medium
0100
O(n)
O(h)
Easy
0104
O(n)
O(h)
Easy
0105
O(n)
O(n)
Medium
0106
O(n)
O(n)
Medium
0108
O(n)
O(logn)
Medium
0109
O(n)
O(logn)
Medium
0110
O(n)
O(h)
Easy
0111
O(n)
O(h)
Easy
0114
O(n)
O(h)
Medium
0116
O(n)
O(1)
Medium
0124
O(n)
O(h)
Hard
0129
O(n)
O(h)
Medium
0156
O(n)
O(1)
Medium
🔒
0241
O(n * 4^n / n^(3/2))
O(n * 4^n / n^(3/2))
Medium
0298
O(n)
O(h)
Medium
🔒
0327
O(nlogn)
O(n)
Hard
0333
O(n)
O(h)
Medium
🔒
0337
O(n)
O(h)
Medium
0395
O(n)
O(1)
Medium
0404
O(n)
O(h)
Easy
0437
O(n)
O(h)
Easy
0544
O(n)
O(n)
Medium
0549
O(n)
O(h)
Medium
🔒
0669
O(n)
O(h)
Easy
0671
O(n)
O(h)
Easy
0761
O(n^2)
O(n)
Hard
<b><a href="#algorithms">⬆️ Back to Top</a></b>

Binary Search

#
Title
Solution
Time
Space
Difficulty
Tag
Note
0004
O(log(min(m, n)))
O(1)
Hard
0033
O(logn)
O(1)
Medium
CTCI
0034
O(logn)
O(1)
Medium
0035
O(logn)
O(1)
Medium
0069
O(logn)
O(1)
Medium
0074
O(logm + logn)
O(1)
Medium
0081
O(logn) ~ O(n)
O(1)
Medium
CTCI
0153
O(logn)
O(1)
Medium
0154
O(logn) ~ O(n)
O(1)
Hard
0162
O(logn)
O(1)
Medium
0222
O((logn)^2)
O(1)
Medium
0275
O(logn)
O(1)
Medium
Binary Search
0278
O(logn)
O(1)
Easy
LintCode
0300
O(nlogn)
O(n)
Medium
CTCI, LintCode
Binary Search, BIT, Fenwick Tree, Segment Tree, DP
0302
O(nlogn)
O(1)
Hard
🔒
0354
O(nlogn)
O(1)
Hard
0363
O(min(m, n)^2 * max(m, n) * logn(max(m, n)))
O(max(m, n))
Hard
0367
O(logn)
O(1)
Medium
0374
O(logn)
O(1)
Easy
0410
O(nlogs)
O(1)
Hard
0436
O(nlogn)
O(n)
Medium
0475
O((m + n) * logn)
O(1)
Easy
0540
O(logn)
O(1)
Medium
0658
O(logn + k)
O(1)
Medium
0668
O(m * log(m * n))
O(1)
Hard
0702
O(logn)
O(1)
Medium
🔒
Binary Search
0704
O(logn)
O(1)
Easy
Binary Search
0710
ctor: O(b) pick: O(1)
O(b)
Hard
0719
O(nlogn + nlogw)
O(1)
Hard
0744
O(logn)
O(1)
Easy
0774
O(nlogr)
O(1)
Hard
0786
O(nlogr)
O(1)
Hard
0793
O((logn)^2)
O(1)
Hard
0852
O(logn)
O(1)
Easy
0875
O(nlogr)
O(1)
Medium
0878
O(logn)
O(1)
Hard
0894
O(n * 4^n / n^(3/2))
O(n * 4^n / n^(3/2))
Medium
0911
ctor: O(n) query : O(logn)
O(n)
Medium
0981
set: O(1) get : O(logn)
O(n)
Medium
<b><a href="#algorithms">⬆️ Back to Top</a></b>

Binary Search Tree

#
Title
Solution
Time
Space
Difficulty
Tag
Note
0220
O(nlogk)
O(k)
Medium
0230
O(max(h, k))
O(min(h, k))
Medium
0235
O(h)
O(1)
Easy
EPI
0270
O(h)
O(1)
Easy
🔒
0285
O(h)
O(1)
Medium
🔒
0352
O(logn)
O(n)
Hard
0449
O(n)
O(h)
Medium
0450
O(h)
O(h)
Medium
0530
O(n)
O(h)
Easy
0776
O(n)
O(h)
Medium
🔒
0783
O(n)
O(h)
Easy
0510
O(h)
O(1)
Medium
🔒
<b><a href="#algorithms">⬆️ Back to Top</a></b>

Breadth-First Search

#
Title
Solution
Time
Space
Difficulty
Tag
Note
0102
O(n)
O(n)
Easy
0107
O(n)
O(n)
Easy
0103
O(n)
O(n)
Medium
0117
O(n)
O(1)
Hard
0127
O(b^(d/2))
O(w * l)
Medium
CTCI
Bi-BFS
0130
O(m * n)
O(m + n)
Medium
0133
O(n)
O(n)
Medium
0207
O(|V| + |E|)
O(|E|)
Medium
Topological Sort, Kahn’s Algorithm
0210
O(|V| + |E|)
O(|E|)
Medium
Topological Sort, Kahn’s Algorithm
0261
O(|V| + |E|)
O(|V| + |E|)
Medium
🔒
0269
O(n)
O(1)
Hard
🔒
Topological Sort, BFS, DFS
0286
O(m * n)
O(g)
Medium
🔒
0310
O(n)
O(n)
Medium
0317
O(k * m * n)
O(m * n)
Hard
🔒
0433
O(n * b)
O(b)
Medium
0444
O(n * s)
O(n)
Medium
🔒
Topological Sort
0490
O(max(r, c) * w)
O(w)
Medium
0499
O(max(r, c) * wlogw)
O(w^2)
Hard
0505
O(max(r, c) * wlogw)
O(w)
Medium
0542
O(m * n)
O(1)
Medium
DP
0666
O(n)
O(w)
Medium
🔒
Topological Sort
0675
O(t * m * n)
O(m * n)
Hard
A* Search Algorithm
0742
O(n)
O(n)
Medium
0743
O(|E| * log|V|)
O(|E|)
Medium
Dijkstra's Algorithm
0752
O(k * n^k + d)
O(k * n^k + d)
Medium
0773
O((m * n) * (m * n)!)
O((m * n) * (m * n)!)
Hard
A* Search Algorithm
0787
O(|E| * log|V|)
O(|E|)
Medium
Dijkstra's Algorithm
0815
O(|E| + |V|)
O(|E| + |V|)
Hard
0854
O(n * n!/(c_a!…c_z!))
O(n * n!/(c_a!…c_z!))
Hard
0864
_O(k * r * c + k^3*2^k)_
_O(k*2^k)_
Hard
Dijkstra's Algorithm
0882
O(|E| * log|V|)
O(|E|)
Hard
Dijkstra's Algorithm
0886
O(|V| + |E|)
O(|V| + |E|)
Medium
0913
O(n^3)
O(n^2)
Hard
MiniMax, Topological Sort
0934
O(n^2)
O(n^2)
Medium
BFS, DFS
0967
O(2^n)
O(2^n)
Medium
0994
O(m * n)
O(m * n)
Easy
<b><a href="#algorithms">⬆️ Back to Top</a></b>

Depth-First Search

#
Title
Solution
Time
Space
Difficulty
Tag
Note
0112
O(n)
O(h)
Easy
0113
O(n)
O(h)
Medium
0199
O(n)
O(h)
Medium
0200
O(m * n)
O(m * n)
Medium
BFS, DFS, Union Find
0236
O(n)
O(h)
Medium
EPI
0247
O(n * 5^(n/2))
O(n)
Medium
🔒
0250
O(n)
O(h)
Medium
🔒
0257
O(n * h)
O(h)
Easy
0282
O(4^n)
O(n)
Hard
0301
O(C(n, c))
O(c)
Hard
0329
O(m * n)
O(m * n)
Hard
DFS, Topological Sort
0339
O(n)
O(h)
Easy
🔒
0364
O(n)
O(h)
Medium
🔒
0366
O(n)
O(h)
Medium
🔒
0417
O(m * n)
O(m * n)
Medium
0440
O(logn)
O(logn)
Hard
0464
O(n!)
O(n)
Medium
0515
O(n)
O(h)
Medium
0547
O(n^2)
O(n)
Medium
Union Find
0582
O(n)
O(n)
Medium
🔒
DFS, BFS
0638
O(n * 2^n)
O(n)
Medium
0690
O(n)
O(h)
Easy
DFS, BFS
0694
O(m * n)
O(m * n)
Medium
🔒
0695
O(m * n)
O(m * n)
Easy
0711
O((m * n) * log(m * n))
O(m * n)
Hard
🔒
Hash
0733
O(m * n)
O(m * n)
Easy
0749
O((m * n)^(4/3))
O(m * n)
Hard
Simulation
0753
O(k^n)
O(k^n)
Hard
de Bruijn sequences, Lyndon word, Rolling Hash, Backtracking, Greedy
0756
O(a^b)
O(a^b)
Medium
0785
O(|V| + |E|)
O(|V|)
Medium
0797
O(p + r * n)
O(n)
Medium
0802
O(|V| + |E|)
O(|V|)
Medium
0827
O(n^2)
O(n^2)
Hard
0834
O(n)
O(n)
Hard
0841
O(n!)
O(n)
Medium
0851
O(q + r)
O(q + r)
Medium
<b><a href="#algorithms">⬆️ Back to Top</a></b>
专题1 → Backtracking
<b><a href="#algorithms">⬆️ Back to Top</a></b>

Dynamic Programming

#
Title
Solution
Time
Space
Difficulty
Tag
Note
0010
O(m * n)
O(n)
Hard
0044
O(m * n)
O(1)
Hard
Greedy
0053
O(n)
O(1)
Easy
0062
O(m + n)
O(1)
Medium
Combinatorics
0063
O(m * n)
O(m + n)
Medium
0064
O(m * n)
O(m + n)
Medium
0070
O(logn)
O(1)
Easy
Matrix Exponentiation
0072
O(m * n)
O(m + n)
Hard
0087
O(n^4)
O(n^3)
Hard
0091
O(n)
O(1)
Medium
0096
O(n)
O(1)
Medium
Math
0097
O(m * n)
O(m + n)
Hard
0115
O(n^2)
O(n)
Hard
0120
O(m * n)
O(n)
Medium
0123
O(n)
O(1)
Hard
0132
O(n^2)
O(n^2)
Hard
0139
O(n * l^2)
O(n)
Medium
0152
O(n)
O(1)
Medium
0174
O(m * n)
O(m + n)
Hard
0188
O(n)
O(n)
Hard
Quick Select, Mono Stack
0198
O(n)
O(1)
Easy
0213
O(n)
O(1)
Medium
0221
O(n^2)
O(n)
Medium
EPI
0256
O(n)
O(1)
Medium
🔒
0265
O(n * k)
O(k)
Hard
🔒
0276
O(n)
O(1)
Easy
🔒
0279
O(n * sqrt(n))
O(n)
Medium
Hash
0303
ctor: O(n), lookup: O(1)
O(n)
Easy
0304
ctor: O(m * n), lookup: O(1)
O(m * n)
Medium
0309
O(n)
O(1)
Medium
0312
O(n^3)
O(n^2)
Hard
0322
O(n * k)
O(k)
Medium
0351
O(9^2 * 2^9)
O(9 * 2^9)
Medium
🔒
Backtracking
0357
O(n)
O(1)
Medium
Backtracking, Math
0361
O(m * n)
O(m * n)
Medium
🔒
0368
O(n^2)
O(n)
Medium
0375
O(n^3)
O(n^2)
Medium
0377
O(nlogn + n * t)
O(t)
Medium
0403
O(n^2)
O(n^2)
Hard
0416
O(n * s)
O(s)
Medium
0418
O(r + n * c)
O(n)
Medium
🔒
0446
O(n^2)
O(n * d)
Hard
0465
O(n * 2^n)
O(2^n)
Hard
🔒
0466
O(s1 * min(s2, n1))
O(s2)
Hard
0467
O(n)
O(1)
Medium
0471
O(n^3) on average
O(n^2)
Medium
🔒
0472
O(n * l^2)
O(n * l)
Medium
0474
O(s * m * n)
O(m * n)
Medium
0486
O(n^2)
O(n)
Medium
0494
O(n * S)
O(S)
Medium
DP
0509
O(logn)
O(1)
Easy
variant of Climbing Stairs
Matrix Exponentiation
0514
O(k) ~ O(k * r^2)
O(r)
Hard
0516
O(n^2)
O(n)
Medium
0518
O(n * m)
O(m)
Medium
DP
0546
O(n^3) ~ O(n^4)
O(n^3)
Hard
0552
O(n)
O(1)
Hard
0562
O(m * n)
O(n)
Medium
🔒
0568
O(n^2 * k)
O(k)
Hard
🔒
0576
O(N * m * n)
O(m * n)
Medium
0583
O(m * n)
O(n)
Medium
0600
O(1)
O(1)
Hard
0629
O(n * k)
O(k)
Hard
0639
O(n)
O(1)
Hard
0650
O(sqrt(n))
O(1)
Medium
0656
O(n * B)
O(n)
Hard
🔒
0664
O(n^3)
O(n^2)
Hard
0673
O(n^2)
O(n)
Medium
0688
O(k * n^2)
O(n^2)
Medium
0689
O(n)
O(n)
Hard
0691
O(T * S^T)
O(T * S^T)
Hard
Backtracking, Memoization
0712
O(m * n)
O(n)
Medium
0714
O(n)
O(1)
Medium
0727
O(s * t)
O(s)
Hard
🔒
0730
O(n^2)
O(n)
Hard
0740
O(n)
O(1)
Medium
0741
O(n^3)
O(n^2)
Hard
0746
O(n)
O(1)
Easy
0750
O(n * m^2)
O(n * m)
Medium
0764
O(n^2)
O(n^2)
Medium
0788
O(logn)
O(logn)
Easy
Memoization
0790
O(logn)
O(1)
Medium
Matrix Exponentiation
0799
O(n^2)
O(n)
Medium
0801
O(n)
O(1)
Medium
0805
O(n^4)
O(n^3)
Hard
0808
O(1)
O(1)
Medium
Memoization
0813
O(k * n^2)
O(n)
Medium
0818
O(nlogn)
O(n)
Hard
0823
O(n^2)
O(n)
Medium
0837
O(n)
O(n)
Medium
0838
O(n)
O(n)
Medium
0847
_O(n *2^n)_
O(n * 2^n)
Hard
BFS
0877
O(n^2)
O(n)
Medium
0879
O(n * p * g)
O(p * g)
Hard
0903
O(n^2)
O(n)
Hard
0920
O(n * l)
O(l)
Hard
0926
O(n)
O(1)
Medium
0931
O(n^2)
O(1)
Medium
0935
O(logn)
O(1)
Medium
Matrix Exponentiation
0940
O(n)
O(1)
Hard
0943
O(n^2 * (l^2 + 2^n))
O(n^2)
Hard
0956
O(n * 3^(n/2))
O(3^(n/2))
Hard
0960
O(n * l^2)
O(l)
Hard
0964
O(logn / logx)
O(logn)
Hard
Math
0975
O(nlogn)
O(n)
Hard
Mono Stack, BST
0980
O((m * n) * 2^(m * n))
O((m * n) * 2^(m * n))
Hard
0983
O(n)
O(1)
Medium
1000
O(n^3 / k)
O(n^2)
Hard
<b><a href="#algorithms">⬆️ Back to Top</a></b>

Greedy

#
Title
Solution
Time
Space
Difficulty
Tag
Note
0011
O(n)
O(1)
Medium
0042
O(n)
O(1)
Hard
Tricky
0045
O(n)
O(1)
Hard
0055
O(n)
O(1)
Medium
0122
O(n)
O(1)
Easy
0134
O(n)
O(1)
Medium
0135
O(n)
O(n)
Hard
0316
O(n)
O(1)
Hard
Mono Stack
0321
O(k * (m + n + k)) ~ O(k * (m + n + k^2))
O(m + n + k^2)
Hard
variant of Delete Digits
Greedy, DP
0330
O(s + logn)
O(1)
Hard
0376
O(n)
O(1)
Medium
0392
O(n)
O(1)
Medium
0397
O(n)
O(1)
Medium
Math
0402
O(n)
O(n)
Medium
LintCode
0435
O(nlogn)
O(1)
Medium
Line Sweep
0452
O(nlogn)
O(1)
Medium
0455
O(nlogn)
O(1)
Easy
0484
O(n)
O(1)
Medium
🔒
0621
O(n)
O(1)
Medium
0630
O(nlogn)
O(k)
Hard
0646
O(nlogn)
O(1)
Medium
Line Sweep
0649
O(n)
O(n)
Medium
0659
O(n)
O(1)
Medium
0738
O(1)
O(1)
Medium
0757
O(nlogn)
O(n)
Hard
0759
O(m * logn)
O(n)
Hard
🔒
0763
O(n)
O(n)
Medium
0767
O(n)
O(1)
Medium
0798
O(n)
O(1)
Hard
0843
O(n)
O(n)
Hard
MinMax, Math
0861
O(r * c)
O(1)
Medium
0870
O(nlogn)
O(n)
Medium
0881
O(nlogn)
O(n)
Medium
0936
O((n - m) * m)
O((n - m) * m)
Hard
0948
O(nlogn)
O(1)
Medium
Two Pointers
0962
O(n)
O(n)
Medium
Mono Stack
0968
O(n)
O(h)
Hard
DFS
0984
O(a + b)
O(1)
Easy
0991
O(logn)
O(1)
Medium
0995
O(n)
O(1)
Hard
<b><a href="#algorithms">⬆️ Back to Top</a></b>

Graph

#
Title
Solution
Time
Space
Difficulty
Tag
Note
0332
O(|V| + |E|log|V|)
O(|V| + |E|)
Medium
Hierholzer's Algorithm, Eulerian Path
0399
O(e + q)
O(n)
Medium
Floyd-Warshall Algorithm, BFS, Union Find
0765
O(n)
O(n)
Hard
0924
O(n^2)
O(n)
Hard
Union Find
0928
O(n^2)
O(n)
Hard
Union Find
0959
O(n^2)
O(n^2)
Medium
Union Find
0990
O(n)
O(1)
Medium
Union Find
Backtrackingzsh+nvim+lsp配置
Loading...
ran2323
ran2323
忘掉名字吧
Latest posts
SFT + DPO 塔罗解读
2025-3-30
DPO 相关
2025-3-29
今日paper(3/25) - MAGPIE
2025-3-27
关于Docker network的一些补充
2025-3-26
PPO 相关, 关于损失函数的一些理解
2025-3-13
SAM 代码学习 [1]
2025-3-4
Announcement
 
 
 
 
暂时没有新的内容