摘要: 终于讲到快速排序(quick sort)了 假设有下面这样一串数字,你想要将它们从小到大排序: 现在请用上一个笔记刚刚学到的分而治之思想,来解决这个问题。 回想一下,在上一个笔记中,分而治之的关键两点: (1)找到基线条件。 (2)找到一种方法,它可以不断使用以缩小问题的规模,使其符合基线条件。 那 阅读全文
posted @ 2020-09-18 15:48 平平的圆圆 阅读(329) 评论(0) 推荐(0)
摘要: 分而治之 divide and conquer, D&C 一种解决问题的策略 先看一个例子,比如,你是一个农场主,有一小块土地,大小为1680m x 640m 现在,你想把这块土地分成许多方块,这些方块应该尽可能地大,并且均匀。解释一下这个要求就是,首先,分出的形状应该是正方形,其次,这些正方形的面 阅读全文
posted @ 2020-09-18 10:33 平平的圆圆 阅读(189) 评论(0) 推荐(0)
摘要: 我现在有一个代办事项的列表: 现在我想把这个列表的三个事项存进内存里,每个事项占用一个内存单元。内存大概长这样: 可以看到,这三个事项被存进了内存的前三个单元中,这是三个连续的存储单元。 除了将它们存进连续的存储单元中,我们还可以将它们存进三个不相邻的单元中,像这样: 这里有一个问题,那就是,我们把 阅读全文
posted @ 2020-09-14 20:59 平平的圆圆 阅读(126) 评论(0) 推荐(0)
摘要: 二进制数的加法 先看一个1bit输入的半加器: 其中,S是和,C_out是进位。从上图可以发现,S = A XOR B, C_out = A AND B,因此,一个半加器实际上是由异或门和与门电路实现的。 一个全加器,就是一个半加器增加一个进位输入,下面是一个1bit的全加器: 那么,如果要实现多b 阅读全文
posted @ 2020-09-14 10:52 平平的圆圆 阅读(5098) 评论(0) 推荐(0)
摘要: #include <iostream> #include <fstream> #include <vector> using namespace std; int train_image[60000][28][28]; int train_label[60000]; int test_image[1 阅读全文
posted @ 2020-07-07 15:49 平平的圆圆 阅读(376) 评论(0) 推荐(0)
摘要: 作者信息:Tianshi Chen 中科院计算所 2014 ASPLOS 一句话总结:实现了一个低存取功耗的DNN/CNN的推断过程的加速器。 所用方法:将数据缓存分成input buffer(NBin), output buffer(NBout) 和 synapse buffer(SB),并且分批 阅读全文
posted @ 2020-06-20 19:04 平平的圆圆 阅读(954) 评论(0) 推荐(0)