跳至主要內容
编程时光
现代Javascript高级教程
深入浅出Dart
linwu的算法笔记
现代Typescript高级教程
谷歌插件小册
open in new window
Markdown编辑器
open in new window
Lc
linwu
小于 1 分钟
目录
#
序言
#
Algorithms
#
Dynamic Programming
编辑距离
不同路径
打家劫舍
打家劫舍 II
单词拆分
动态规划:备忘录和状态转移方程
斐波那契数
冷冻期下的买卖股票的最佳时机
零钱兑换
买卖股票的最佳时机
买卖股票的最佳时机 II
买卖股票的最佳时机 III
爬楼梯
三个非重叠子数组的最大和
跳跃游戏
最大和的循环子数组
最大连续乘积子数组
最大子序和
最低票价
最小下降路径和
最小下降路径和
最小叶值生成树
最长递增子序列
最长公共子序列
最长数对链
最长重复子数组
#
Graph
关节点(或割点)
广度优先搜索(BFS)
哈密尔顿路径
检测图中的循环
克鲁斯卡尔算法
旅行商问题
欧拉路径
普里姆算法
强连通分量
深度优先搜索(DFS)
拓扑排序
图中的桥
Bellman-Ford 算法
Dijkstra 算法
Floyd-Warshall 算法
#
Greedy Algorithm
爆破气球的最少箭数
分发饼干
分糖果
根据身高重建队列
雇用K名工人的最低成本
划分字母区间
加油站
救生艇
柠檬水变化
贪心算法
跳跃游戏
跳跃游戏 II
无重叠区间
最少的水龙头灌溉花园
#
Image Processing
Content-aware image resizing in JavaScript
#
Linked List
链表遍历
链表倒序遍历
#
Queue
队列
滑动窗口的最大值
设计循环队列
#
Search
插值查找
二分查找
跳跃搜索
线性搜索
#
Sliding Window
滑动窗口算法
滑动窗口最大值
判断字符串排列
无重复字符的最长子串
最小长度子数组和
最长重复字符替换
#
Sorting
插入排序
堆排序
归并排序
基数排序
计数排序
快速排序
冒泡排序
桶排序
希尔排序
选择排序
#
Stack
反转字符串
括号的得分
逆波兰表达式求值
删除字符串中的所有相邻重复项
删除字符串中的所有相邻重复项 II
使括号有效的最少添加
下一个更大元素
移除重复字母
移除最外层的括号
移除k位数字
有效的括号
栈(Stack)
#
Statistics
加权随机
#
String
编辑距离
汉明距离
回文检查(Palindrome Check)
正则表达式匹配
最长公共子串问题
Knuth–Morris–Pratt 算法
Rabin-Karp算法
Z 算法
#
Tree
广度优先搜索(BFS)
深度优先搜索(DFS)
#
Two Pointers
从排序数组中删除重复项
反转字符串
反转字符串中的元音字母
两数之和
双指针技巧的详解
无重复字符的最长子串
移除元素
移动零
#
Data Structures
#
不相交集
#
布隆过滤器
#
堆
#
队列
#
哈希表
#
链表
#
树
二叉搜索树(Binary Search Tree)
红黑树
线段树
AVL树
Fenwick树 / 二进制索引树
#
双向链表
#
图
#
优先队列
#
栈
#
字典树
#
LRU
关注公众号
和小伙伴们一起学习
加入技术交流群
扫描二维码 备注
加群