数组_Shon_5
首页
Github
力扣
M站
全部原创,请勿转载
技术:
前端
后端
音视频
数据库
运维
产品
网络
应用
插件:
开源
ShopXO
数据结构:
数组
字符串
链表
栈
单调栈
队列
优先队列
最小堆
最大堆
小根堆
大根堆
小顶堆
大顶堆
二叉树
多叉树
二叉平衡树
图
并查集
字典树
树状数组
线段树
哈希表
邻接表
矩阵
LRU
回文
集合
哈希集合
位图
位集
区间
遍历:
顺序遍历
倒序遍历
前序遍历
中序遍历
后序遍历
层序遍历
螺旋遍历
中心扩散
两端收缩
技巧:
前缀和
位运算
滑动区间
正则
双指针
回调函数
交换变量
原地修改
查找:
顺序查找
二分查找
三分查找
深度优先搜索
广度优先搜索
快速选择
排序:
冒泡排序
选择排序
插入排序
归并排序
快速排序
拓扑排序
计数排序
桶排序
堆排序
基数排序
自定义排序
数学:
求和
快速幂
质数
曼哈顿距离
中位数
丑数
杨辉三角
排列
组合
容斥原理
公约数
公倍数
日期
蔡勒公式
水塘抽样
拒绝抽样
几何
博弈
数论
概率与统计
随机化
约瑟夫环
对数
算法:
递归
迭代
哈希
KMP
回溯
贪心
动态规划
归并
Brian-Kernighan算法
凸包
语言:
JavaScript
Go
PHP
SQL
Shell
Java
Python
TypeScript
C
C++
C#
顺利遍历、二分查找 2 种算法,降序排列和前缀和技巧,求解《1403. 非递增顺序的最小子序列》
顺利遍历、二分查找 2 种算法(手写实现 bisect.bisect_right / upper_bound),用降序排列和前缀和技巧,求解《1403. 非递增顺序的最小子序列》
链表、数组,2 解法求解《622. 设计循环队列》
JavaScript / TypeScript / PHP / Golang / Python / Java / C# / C / C++ 构造循环队列,链表和数组,2 解法求解《622. 设计循环队列》
顺序遍历,三路划分(三切分 / 三指针 / 三分查找)的快速选择,虚地址:求解《280. 摆动排序》和《324. 摆动排序 II》
顺序遍历,三路划分(三切分 / 三指针 / 三分查找)的快速选择,虚地址,求解《280. 摆动排序》和《324. 摆动排序 II》
顺利遍历、排序双指针、哈希集合:求解《532. 数组中的 k-diff 数对》
顺利遍历、排序双指针、哈希集合,求解《532. 数组中的 k-diff 数对》
二分查找:求解《33. 搜索旋转排序数组》和《153. 寻找旋转排序数组中的最小值》
二分查找,求解《33. 搜索旋转排序数组》
快速排序、排序 API + 计数排序:求解《1051. 高度检查器》
快速排序、排序 API + 计数排序,求解《1051. 高度检查器》
差分数组(有序集合 TreeMap):求解《729. 我的日程安排表 I》《剑指 Offer II 058. 日程表》《731. 我的日程安排表 II》和《732. 我的日程安排表 III》
差分数组(有序集合 TreeMap),求解《729. 我的日程安排表 I》《剑指 Offer II 058. 日程表》《731. 我的日程安排表 II》和《732. 我的日程安排表 III》
回溯 + 动态规划(掩码 · 状态压缩):2 方法求解《473. 火柴拼正方形》
回溯 + 动态规划(掩码 · 状态压缩),2 方法求解《473. 火柴拼正方形》
哈希集合、间隔、随机化:3 种方法求解《961. 在长度 2N 的数组中找出重复 N 次的元素》
哈希集合、间隔、随机化,3 种方法求解《961. 在长度 2N 的数组中找出重复 N 次的元素》
快速排序(快速选择)优化:双指针、打乱数组、随机基准元素(随机数、中间数、中位数)、三路划分三指针:求解《462. 最少移动次数使数组元素相等 II》
快速排序(快速选择)的优化:双指针、打乱数组(Fisher–Yates shuffle 洗牌算法)、随机基准元素(随机数、中间数、中位数)、三路划分(三切分 / 三指针 / 三分查找)。求解《462. 最少移动次数使数组元素相等 II》。
1
2
4
5
6
7
上页
下页