摘要:
为了克服普通队列的“假溢出”缺点,使用循环队列,用一个数组来模拟圆环,到达末尾后利用取模运算重新回到队首。 实现: front为队首指针,back为队尾指针。 由于队列满和队列空时front和back都相等,所以人为空一个元素。即如果队列数据结构容量为N,循环队列能容纳的有效数据为N-1。这样队列满 阅读全文
摘要:
题目: 设计一个算法,找出二叉搜索树中指定节点的“下一个”节点(也即中序后继)。 如果指定节点没有对应的“下一个”节点,则返回null。 示例 1: 输入: root = [2,1,3], p = 1 2 / \1 3 输出: 2示例 2: 输入: root = [5,3,6,2,4,null,nu 阅读全文
摘要:
FCFS(First come first serve)先来先服务算法: 简单的排队算法,维护一个队列,后来的只能排在队尾等待。 非抢占。 缺点:不够智能,对于cpu密集型进程不友好,比如:一个只需要1ms运行时间的cpu密集型进程,但是之前有一个要读5s的io密集型进程。那么即使那个cpu密集型进 阅读全文
摘要:
今天字节面试的时候问到了协程的内容,然而我根本不会,赶紧补补课。 粘贴一下,链接:https://www.jianshu.com/p/6dde7f92951e 协程(Coroutines)是一种比线程更加轻量级的存在,正如一个进程可以拥有多个线程一样,一个线程可以拥有多个协程。 协程不是被操作系统内 阅读全文