4.3k 4 分钟

算法题 二叉树遍历
二叉树前序遍历
二叉树中序遍历
二叉树后序遍历
二叉树层序遍历
二叉树层序遍历 II
N 叉树的前序遍历
N 叉树的后序遍历
N 叉树的层序遍历
6.2k 6 分钟

# go 协程实现快排 V2 上一期:https://blog.twelveeee.top/2023/Go/go goroutine quicksort/ 使用了 sync.WaitGroup 对 p 的左右两边进行有序的排序 测试出来 使用协程进行排序的效果差于单线程。 现在重新优化了几个版本。 每次递归之后,到最后对于只有几个元素的情况下,再开辟协程进行快排,会大量的创建资源和调用 Goroutine,资源消耗主要不是在排序,而是在创建 Goroutine。所以只有几个元素的情况,会直接使用单线程进行排序。 使用 sync.WaitGroup 的 进行阻塞,在这种情况下不如使用 chan...
13k 11 分钟

# 分布式限流设计与实现 # 常见限流算法 # 固定窗口计数 固定窗口计数器算法概念如下: 将时间划分为多个窗口; 在每个窗口内每有一次请求就将计数器加一; 如果计数器超过了限制数量,则本窗口内所有的请求都被丢弃当时间到达下一个窗口时,计数器重置。 # 滑动窗口计数 滑动窗口计数器算法概念如下: 将时间划分为多个区间; 在每个区间内每有一次请求就将计数器加一维持一个时间窗口,占据多个区间; 每经过一个区间的时间,则抛弃最老的一个区间,并纳入最新的一个区间; 如果当前窗口内区间的请求计数总和超过了限制数量,则本窗口内所有的请求都被丢弃。 # 漏桶算法 漏桶算法概念如下: 将每个请求视作...
4.7k 4 分钟

算法题 链表基础
链表中环的检测
两个有序的链表合并
删除链表倒数第 n 个结点
求链表的中间结点
-->