摘要: 再次展示算法的力量!~~三分钟的程序优化到了90毫秒,还是那句话,位运算神马的最给力了。 再次展示算法的力量!~~三分钟的程序优化到了90毫秒,还是那句话,位运算神马的最给力了。淘宝卖家想知道,哪些商品的组合是最受欢迎的。已知十万多订单项里,有几十种商品,有一万多相关用户,要求输出2-6种商品的全部组合,对应的订单数。订单项,记录的是产品编号,用户编号,可以随机模拟。这个程序,同事小张,在输出2种商品的情况下,就耗时3分多钟。在他原有的代码上,我把他原来的复杂度O(n^2*m^2),利用哈希表,优化到了O(n^2*m),还需要59秒。今天决定得瑟一下,突破性能极限,显露一下位运算的威武。原理如 阅读全文
posted @ 2011-06-30 09:32 狼-志 阅读(382) 评论(0) 推荐(0)
摘要: 位运算神马的,最给力了,当你的复杂度优化到不能再优的时候,你还可以考虑位运算,把本来小时级别的运算提高到秒级别。比如6400个bool值向量,你要窜位比较相似度O(n^2)复杂度不能再优化的情况下,需要6400*6400=4千万次比较,如果变成Ulong 64位的,每次O(1)比较64位,就可以把复杂度压缩到O(n^2/64/64),时间压缩4000倍!本来小时级别的运算提高到秒级别。参考我另外一个文章,位运算技巧总结:http://blog.csdn.net/superdullwolf/archive/2009/10/10/4649080.aspx下面是C#的一些实验。using Syste 阅读全文
posted @ 2011-06-30 09:31 狼-志 阅读(332) 评论(0) 推荐(0)