摘要:
刷完了LeetCode链表相关的经典题目,总结一下用到的技巧: 1. 技巧 1. 哑节点 哑节点可以将很多特殊case(比如:NULL或者单节点问题)转化为一般case进行统一处理,这样代码实现更加简洁,优雅 2. 两个指针 链表相关的题目一般都需要用到两个指针:prev指针和cur指针 3. 头插 阅读全文
摘要:
多线程同步问题,都需要用到监视器,用来监视资源是否可用。C++中使用condition_variable,Java中使用Condition来实现同步。 1. 实现思路 1. 需要有一个全局变量控制当前该哪个线程访问资源 2. 调用wait,让出资源使用权 3. 调用notify,通知线程访问资源 2 阅读全文