刷题记录- 202512

已做题目

sorting

  • quick sort/ quick selection

Find TopK largest- QuickSelect快速选择 method
  • 思路: divide and conquer. 每次找到start, end-1 范围内array[end]适合插入的位置,该位置左边是大于array[end]的所以元素, 右边是所有小于array[end]的元素

searching

  • 思路:移动边界时,+1, -1是为了避免死循环,不+/-1是为了保留数值

heap/Array

  • 思路: min-heap, 时间复杂度nlogk

  • 滑动窗口+ max-heap

DFS

  • 思路:组合问题,不是排列问题, recursion 里只有2个child

  • 备注: 细节问题, 注意传参被传错

BFS

  • 思路: bfs, 遍历整个matrix, 每次找到element=1 就bfs queue。 注意:queue append要是当前位置的上下左右4个方向,而不是右下,因为queue append的方向并不是往右下角遍历

Tree

树遍历

  • 注意:o1, o2不能是ancester

  • 代码

  • recursion swap 左右节点即可

待做题目

sorting

quick sort

https://app.gitbook.com/o/MQg1qdqArWYMTe4S9fPp/s/-MU4s3p9Ql9V0G1xvT9E-2910905616/datastructure/sorting/find-topk-largest-quickselect-kuai-su-xuan-ze-method

merge sort

https://app.gitbook.com/o/MQg1qdqArWYMTe4S9fPp/s/-MU4s3p9Ql9V0G1xvT9E-2910905616/datastructure/sorting/mergesort-linkedlist

heap sort

https://app.gitbook.com/o/MQg1qdqArWYMTe4S9fPp/s/-MU4s3p9Ql9V0G1xvT9E-2910905616/datastructure/heap-and-queue/find-the-k-largest

Searching

Array

DFS

BFS

DP

Tree

树遍历

Graph

Last updated

Was this helpful?