把 4W 条数据放在内存中执行
昨天晚上,朋友问我,怎么把四万条数据放到内存中处理?
作为Nodejser,我是不喜欢一次处理这么多数据的,或者说不希望四万条数据都放在内存中。进一步询问,我才知道问题是这样的。
现在有三类数据,都是数组保存,对这三类数据按顺序排列组合,会得到4W种可能,需要把这4W种结果发送网络请求。
那么问题就从怎么把4W条数据保存在内存简化为排列组合问题了。
简化问题
假设现在有三类数据分别为A,B,C,组合形式为AiBjCk
。这个问题就能简化为类似进制问题。
我们把C的数据看为个位,B的数据看为十位,A为百位。当C遍历一次,B下标进一位,当B遍历一次A下标进一位,当A遍历一次,就是全部的排列组合。
Show Time
1 |
|
这里就用到闭包来解决这个问题。为什么用闭包?因为不想内部变量被修改。这个代码没有对传入参数进行检验和拦截,大家凑活看吧。
把 4W 条数据放在内存中执行
https://bubao.github.io/posts/ad5468c0.html
Powered By Valine
v1.4.14
v1.4.14