LeetCode Answers

开启刷题之路,这里会记录博主在LeetCode上刷题时写下的题解和代码(c++11) 建议先看以下文章

博主对于所有的算法,尽可能地对运行时间进行了优化,即faster than 97.00% of C++ online submissions at least. 之所以有部分不是100%,是因为同样的代码在不同时间段提交,在LeetCode的runtime可能不同,即使是用别人beats 100%的代码提交也是一样

题解主要包括

  • 解题思路
  • 代码
  • 时间/空间复杂度分析
  • Corner Cases

Note:

  • 题解中的时间复杂度和空间复杂度均是最坏情况下的
  • 过于简单的题,博主不会写题解
  • 由于github的repo更新,部分github链接已失效,可以点我查看
题目 难度 topic
11. Container With Most Water Medium 数组、two pointers
23. Merge k Sorted Lists hard 链表、分治、堆
210. Course Schedule II Medium 图、拓扑排序、深度优先遍历、广度优先遍历
218. The Skyline Problem Hard 分治、堆、线段树、树状数组、扫描线
268. Missing Number Easy 数组、数学、位运算
315. Count of Smaller Numbers After Self hard 数组、排序、分治、二叉搜索树、树状数组、线段树
349. Intersection of Two Arrays Easy 排序、哈希表、two pointers、数组
1218. Longest Arithmetic Subsequence of Given Difference Medium 数学、动态规划

Binary Search

Bit Operation

Sort

DFS

BFS

Linked List

Greedy

Divide and Conquer

Dynamic planning

Backtracking

Math

Graph

Tree

String

Array

HashTable

Stack

Two Pointers

Other