算法
文章平均质量分 69
洗来洗麻衣
努力努力!钢巴洛!
展开
-
堆的应用——优先级队列
接上文:堆排序Heap Sort——浅显易懂+Java实现 堆分最小堆最大堆,优先级队列也分最小优先级队列和最大优先级队列。先来介绍一下优先级队列: 优先级队列是用来维护由一组元素构成的集合S的数据结构,这一组元素中的每一个都有一个关键字key,一个最大优先级队列支持以下操作: Insert(S, x):把元素x插入S中 Ma原创 2016-09-06 22:12:34 · 418 阅读 · 0 评论 -
KaraTsuba乘法——高效的大数乘法
今天看Coursera课程时,看到一个牛逼的算法,叫KaraTsuba乘法。普通乘法复杂度一般都是O(n^2),而这个算法,仅有O(nlog3)。下面,我就来介绍一下这个算法。 首先来看看这个算法是怎么进行计算的,见下图:图中显示了计算5678*1234的过程,首先是拆分成abcd四个部分,然后分别计算ac, bd, (a + b)*(c+d),最后再用第三个算式的结果减去前原创 2016-09-10 13:29:29 · 5688 阅读 · 6 评论