![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法与数据结构
涂有
架构世界,架构未来
展开
-
线程池大小,线程数计算公式
有一个简单并且适用面比较广的公式: CPU 密集型任务(N+1): 这种任务消耗的主要是 CPU 资源,可以将线程数设置为 N(CPU 核心数)+1,比 CPU 核心数多出来的一个线程是为了防止线程偶发的缺页中断,或者其它原因导致的任务暂停而带来的影响。一旦任务暂停,CPU 就会处于空闲状态,而在这种情况下多出来的一个线程就可以充分利用 CPU 的空闲时间。 I/O 密集型任务(2N): 这种任务应用起来,系统会用大部分的时间来处理 I/O 交互,而线程在处理 I/O 的时间段内不会占用 CPU 来处理.原创 2019-12-28 11:06:46 · 3029 阅读 · 0 评论 -
数据结构与算法 简记
栈 当有一个出栈,有一个就进栈的情况,可以用一个数组的两端来存储两个栈 用栈可以消除递归 为什么我的迭代比递归慢呢? 二叉树 满二叉树 节点要么是有两个子节点,要么就是叶子节点 Huffman编码就是满二叉树 特性:非空满二叉树的叶节点等于分支节点数加1 完全二叉树 新增节点都是从左到右,添加叶子节点,直到一层添加满,再起一层。 堆原创 2017-12-25 18:06:13 · 245 阅读 · 0 评论