随笔分类 -  算法

全排列递归算法
摘要:算法原理如果用P表示n个元素的全排列,而Pi表示n个元素中不包含元素i的全排列,(i)Pi表示在排列Pi前面加上前缀i的排列,那么n个元素的全排列可递归定义为:① 如果n=1,则排列P只有一个元素i;② 如果n>1,则全排列P由排列(i)Pi构成;根据定义,可以看出如果已经生成(k-1)个元素的排列Pi,那么k个元素的排列可以在每个Pi前面加上元素i而生成。代码实现function rank($base, $temp=null){ $len = strlen($base); if($len <= 1) { echo $temp.$base.'<br/>' 阅读全文

posted @ 2012-10-09 13:14 27_Man 阅读(435) 评论(5) 推荐(0)

排序算法
摘要:冒泡排序实现原理① 首先将所有待排序的数字放入工作列表中。② 从列表的第一个数字到倒数第二个数字,逐个检查:若某一位上的数字大于他的下一位,则将它与它的下一位交换。③ 重复步骤②,直至再也不能交换。代码实现 1 <?php 2 function bubbingSort(array $array) 3 { 4 for($i=0, $len=count($array)-1; $i<$len; ++$i) 5 { 6 for($j=$len; $j>$i; --$j) 7 { 8 if($array[$j] < $array[$... 阅读全文

posted @ 2012-10-09 11:54 27_Man 阅读(326) 评论(0) 推荐(0)