Algorithm
菜蒂亚万
www.niushao.net
展开
-
漏桶算法-php,python实现
漏桶算法-php实现1,概览最近研究nginx的限流,limit_req_zone。其功能就是限制大访问量下的请求数量,防止服务器故障。核心逻辑就是: 1,给nginx配置一个处理请求速率。比如每秒处理5个请求。 2,大访问量下没有处理到的请求进行排队等待。 3,给排队的请求配置一个长度,超过了长度的请求直接返回错误 。比如设置队列长度为5,有5个请求正在排队的情况下, 下一个请求直接返回错误。比较感兴趣它的实现,查阅资料发现利用了漏桶算法。就顺便带原创 2020-06-26 21:55:43 · 686 阅读 · 0 评论 -
二分查找法
二分查找法简介1,二分查找法,就相当是在循环中边比较边排除的一种搜索定位的方法,循环次数比我们平时的逐步搜索少,性能高2,简单来讲,就是在必须是有序的序列中,寻找某个值,通过一分为二的比较排除,减少比较次数3,每次排除都把所有的情况分成"可能"和"不可能"两种,然后抛弃所有"不可能"的情况.代码实现因为二分查找,也是在循环中比较查找,所以一定少不了循环。首先就会想到用循原创 2017-03-01 21:40:27 · 476 阅读 · 0 评论 -
猴子选大王算法
说明:n个猴子围成一圈,从某个开始报数1-2……m,1-2……m报“m”的猴子就被淘汰,游戏一直进行到圈内只剩一只猴子它就是猴大王了。代码实现1,常规代码function fun1($n,$m){ if($n<2){ echo '猴子数量不能小于2'; } $arr = range(1,$n); $num = 0;原创 2017-03-02 16:51:14 · 917 阅读 · 0 评论 -
冒泡排序法
冒泡排序法简介:第一轮排最小,第二轮排第二小,第三轮排第三小,依次类推……代码实现:<?php$test_arr = array(1,3,5,7,9,10,8,6,4,2);//冒泡排序//第一轮排最小,第二轮排第二小,第三轮排第三小,依次类推……//需要两层循环//体会$i的取值。n个元素排序n-1轮即可for($i=0;$i<count($test_ar原创 2017-03-02 13:56:10 · 396 阅读 · 0 评论 -
php三种排序算法以及效率测试
php三种排序算法以及效率测试<?php//select$arr = range(1,10000);shuffle($arr);var_dump('select start');$start_time=microtime('get_as_float');for($i=0;$i<count($arr)-1;$i++){ $max_key = $i; fo...原创 2018-08-24 15:37:28 · 604 阅读 · 0 评论