
算法
Houzhyan
What is insistence? That is,day after day,you tell yourself to go on for another day.
展开
-
胜者树与败者树, 多路平衡归并外部排序
胜者树与败者树 胜者树和败者树都是完全二叉树,是树形选择排序的一种变型。每个叶子结点相当于一个选手,每个中间结点相当于一场比赛,每一层相当于一轮比赛。 不同的是,胜者树的中间结点记录的是胜者的标号;而败者树的中间结点记录的败者的标号。 胜者树与败者树可以在log(n)的时间内找到最值。任何一个叶子结点的值转载 2017-04-25 21:14:04 · 2422 阅读 · 0 评论 -
js sort方法根据数组中对象的某一个属性值进行排序
转自:http://www.cnblogs.com/yuwenjing0727/p/6856991.htmlsort方法接收一个函数作为参数,这里嵌套一层函数用来接收对象属性名,其他部分代码与正常使用sort方法相同.var arr = [ {name:'zopp',age:0}, {name:'gpp',age:18}, {name:'yjj',age转载 2017-12-05 04:25:19 · 1486 阅读 · 0 评论 -
PHP之冒泡排序的优化
冒泡排序是一个常见的排序算法,它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。对于冒泡排序,大家估计都不陌生,工作原理如下:1、比较相邻的元素。如果第一个比第二个大,就交换他们两个。2、对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应转载 2017-11-06 14:55:24 · 557 阅读 · 0 评论 -
PHP实现几种基本排序算法--冒泡排序法,快速排序法,选择排序法,插入排序法
前提:分别用冒泡排序法,快速排序法,选择排序法,插入排序法将下面数组中的值按照从小到大的顺序进行排序。 $arr(1,43,54,62,21,66,32,78,36,76,39); 1. 冒泡排序思路分析:在要排序的一组数中,对当前还未排好的序列,从前往后对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。即,每当两相邻的数比较后发现它们的排序与排序要求相反时转载 2017-11-06 14:38:06 · 529 阅读 · 0 评论 -
PHP位运算
移位运算符移位运算符就是在二进制的基础上对数字进行平移。按照平移的方向和填充数字的规则分为三种:>(带符号右移)和 >>>(无符号右移)。在移位运算时,byte、short和char类型移位后的结果会变成int类型,对于byte、short、char和int进行移位时,规定实际移 动的次数是移动次数和32的余数,也就是移位33次和移位1次得到的结果相同。移动long型的数值时,规转载 2017-11-06 14:27:51 · 948 阅读 · 0 评论 -
php递归算法经典实例
http://www.111cn.net/phper/php-cy/93178.htm递归函数为自调用函数,在函数体内直接或间接自己调用自己,但需要设置自调用的条件,若满足条件,则调用函数本身,若不满足则终止本函数的自调用,然后把目前流程的主控权交回给上一层函数来执行,可能这样给大家讲解,还是很难明白,直接上例子12345转载 2017-09-09 13:40:23 · 2421 阅读 · 0 评论 -
按位与、或、异或等运算方法
按位与运算符(&)参加运算的两个数据,按二进制位进行“与”运算。运算规则:0&0=0; 0&1=0; 1&0=0; 1&1=1; 即:两位同时为“1”,结果才为“1”,否则为0例如:3&5 即 0000 0011 & 0000 0101 = 0000 0001 因此,3&5的值得1。 另,负数按补码形式参加按位与运转载 2017-09-18 01:51:29 · 680 阅读 · 0 评论 -
算法的时间复杂度和空间复杂度-总结
通常,对于一个给定的算法,我们要做 两项分析。第一是从数学上证明算法的正确性,这一步主要用到形式化证明的方法及相关推理模式,如循环不变式、数学归纳法等。而在证明算法是正确的基础上,第二部就是分析算法的时间复杂度。算法的时间复杂度反映了程序执行时间随输入规模增长而增长的量级,在很大程度上能很好反映出算法的优劣与否。因此,作为程序员,掌握基本的算法时间复杂度分析方法是很有必要的。 算法转载 2017-07-27 20:45:54 · 425 阅读 · 0 评论 -
什么是尾递归,尾递归的优势以及语言支持情况说明
今天在进行数据排序时候用到递归,但是耗费内存太大,于是想找一找有没有既提升效率又节省内存的算法,然后发现尾递归确实不错,只可惜php并没有对此作优化支持.虽然如此,但还是学习了,下面总结一下:尾递归 --概念如果一个函数中所有递归形式的调用都出现在函数的末尾,我们称这个递归函数是尾递归的。当递归调用是整个函数体中最后执行的语句且它的返回值不属于表达式的一部分时,这个递归调用就是原创 2017-07-27 20:38:47 · 5268 阅读 · 0 评论