算法
arthur.dy.lee
这个作者很懒,什么都没留下…
展开
-
微信红包算法
红包算法思路随机,额度在0.01和(剩余平均值2)之间。例如:发100块钱,总共10个红包,那么平均值是10块钱一个,那么发出来的红包的额度在0.01元~20元之间波动。当前面3个红包总共被领了40块钱时,剩下60块钱,总共7个红包,那么这7个红包的额度在:0.01~(60/72)=17.14之间。注意:这里的算法是每被抢一个后,剩下的会再次执行上面的这样的算法这样算下去,会超过最开始的全部金额,因此到了最后面如果不够这么算,那么会采取如下算法:保证剩余用户能拿到最低1分钱即可。如果前面的人手气原创 2020-08-05 10:52:48 · 1090 阅读 · 0 评论 -
常用的排序算法的时间复杂度和空间复杂度
常用的排序算法的时间复杂度和空间复杂度转载 2015-09-28 17:05:08 · 559 阅读 · 0 评论 -
九大排序算法再总结
九大排序算法再总结转载 2015-09-28 17:08:37 · 466 阅读 · 0 评论 -
二分思想与分治法、排序思想
二分思想与分治法、排序思想二分查找是《编程珠玑》作者很喜爱的一个话题,之前我曾经专门写了一篇博文:如何写出正确的二分查找?——利用循环不变式理解二分查找及其变体的正确性以及构造方式,在这里将换几个角度,继续探讨二分查找的相关内容,以及与它联系紧密的分治法和排序思想。 二分思想和分治法 如果你对概念很敏感,会马上意识到这两者的细微不同:二分搜索每次都要舍弃一半,从留下的一半中寻找目标;而分治法把一转载 2016-07-15 17:05:24 · 967 阅读 · 0 评论 -
算法导论------渐近记号Θ、Ο、o、Ω、ω详解【转】
目录:1.渐近精确界记号:ΘΘ(big-theta)2.渐近上界记号 :OO(big-oh)3.渐近下界记号 :ΩΩ(big-omege)4.非渐近紧确上界:o(小-oh)5.非渐近紧确下界:ω(小-omege)6.渐近记号Θ、Ο、o、Ω、ω关系7.参考资料1.渐近精确界记号:ΘΘ(big-theta) 假设算法A的运行时间表达式T1(n)T1(n)为:T1(n)=30n4+20n3+40n2+...转载 2018-07-12 21:42:52 · 788 阅读 · 0 评论 -
数据结构和排序算法时间和空间复杂度
转自:http://bigocheatsheet.com/转载 2018-07-13 16:58:59 · 329 阅读 · 0 评论 -
排序算法复杂度
Big-O Complexity ChartHorribleBadFairGoodExcellentO(log n), O(1)O(n)O(n log n)O(n^2)O(2^n)O(n!)OperationsElementsCommon Data Structure OperationsData StructureTime ComplexitySpace Complexity AverageWo...转载 2018-07-13 17:17:36 · 567 阅读 · 0 评论 -
字符串匹配算法综述
字符串匹配算法综述字符串匹配算法综述:BF、RK、KMP、BM、Sunday字符串匹配算法,是在实际工程中经常遇到的问题,也是各大公司笔试面试的常考题目。此算法通常输入为原字符串(string)和子串(pattern),要求返回子串在原字符串中首次出现的位置。比如原字符串为“ABCDEFG”,子串为“DEF”,则算法返回3。常见的算法包括:BF(Brute Force,暴力检索)、RK(R...转载 2018-07-22 21:39:23 · 43149 阅读 · 6 评论 -
微信红包算法以及带上下限的红包算法
微信红包算法以及带上下限的红包算法原文地址: 带上下限的红包算法实践总结微信红包的随机算法是怎样实现的? - 知乎一、微信红包算法代码大致意思是这样的:假设有100元钱,分给十个人。那么第一个人获得红包大小怎么计算呢?100/10 = 10元。这是期望值。从0.01到20的区间中(其中20=10乘以2)随机抽取一个数,就是第一个人获得红包的大小。假设第一个人获得了15元,那么...转载 2018-08-25 19:54:52 · 25028 阅读 · 14 评论