一:猴子大王
<?php function king($n, $m){ //把n只猴子编排成 1~n 的数组 $monkeys = range(1, $n); $i=0; //开始报数,直到数组中只剩下一只猴子 while (count($monkeys)>1) { // 1~m 往复报数,可以看成是从 1 一只往后报数 // 报数为 m 的倍数的数即为报数为m 的猴子 // 把报数为 m 的倍数的猴子从数组中踢出去 if(($i+1)%$m==0) { unset($monkeys[$i]); } else { // 报数完没有被踢出的猴子把挪放到数组的最后 array_push($monkeys,$monkeys[$i]); if ($i==1) { // code... var_dump($monkeys);die; } unset($monkeys[$i]); } $i++; } return current($monkeys); } echo king(10,3);
二:冒泡
<?php //送给心爱的她5201314 $arr = array('5','2','0','1','3','1','4'); function BubbleSort(array $arr) { for ($i=0 ; $i <count($arr) ; $i++) { //设置一个空变量 $data = ''; for ($j=$i; $j < count($arr)-1 ; $j++) { if ($arr[$i] > $arr[$j+1]) { $data = $arr[$i]; $arr[$i] = $arr[$j+1]; $arr[$j+1] = $data; } echo '$i'.$i;echo '$j'.$j; print_r($arr); } } return $arr; } print_r(BubbleSort($arr)); //------------------------------- $i0$j0Array ( [0] => 2 [1] => 5 [2] => 0 [3] => 1 [4] => 3 [5] => 1 [6] => 4 ) $i0$j1Array ( [0] => 0 [1] => 5 [2] => 2 [3] => 1 [4] => 3 [5] => 1 [6] => 4 ) $i0$j2Array ( [0] => 0 [1] => 5 [2] => 2 [3] => 1 [4] => 3 [5] => 1 [6] => 4 ) $i0$j3Array ( [0] => 0 [1] => 5 [2] => 2 [3] => 1 [4] => 3 [5] => 1 [6] => 4 ) $i0$j4Array ( [0] => 0 [1] => 5 [2] => 2 [3] => 1 [4] => 3 [5] => 1 [6] => 4 ) $i0$j5Array ( [0] => 0 [1] => 5 [2] => 2 [3] => 1 [4] => 3 [5] => 1 [6] => 4 ) $i1$j1Array ( [0] => 0 [1] => 2 [2] => 5 [3] => 1 [4] => 3 [5] => 1 [6] => 4 ) $i1$j2Array ( [0] => 0 [1] => 1 [2] => 5 [3] => 2 [4] => 3 [5] => 1 [6] => 4 ) $i1$j3Array ( [0] => 0 [1] => 1 [2] => 5 [3] => 2 [4] => 3 [5] => 1 [6] => 4 ) $i1$j4Array ( [0] => 0 [1] => 1 [2] => 5 [3] => 2 [4] => 3 [5] => 1 [6] => 4 ) $i1$j5Array ( [0] => 0 [1] => 1 [2] => 5 [3] => 2 [4] => 3 [5] => 1 [6] => 4 ) $i2$j2Array ( [0] => 0 [1] => 1 [2] => 2 [3] => 5 [4] => 3 [5] => 1 [6] => 4 ) $i2$j3Array ( [0] => 0 [1] => 1 [2] => 2 [3] => 5 [4] => 3 [5] => 1 [6] => 4 ) $i2$j4Array ( [0] => 0 [1] => 1 [2] => 1 [3] => 5 [4] => 3 [5] => 2 [6] => 4 ) $i2$j5Array ( [0] => 0 [1] => 1 [2] => 1 [3] => 5 [4] => 3 [5] => 2 [6] => 4 ) $i3$j3Array ( [0] => 0 [1] => 1 [2] => 1 [3] => 3 [4] => 5 [5] => 2 [6] => 4 ) $i3$j4Array ( [0] => 0 [1] => 1 [2] => 1 [3] => 2 [4] => 5 [5] => 3 [6] => 4 ) $i3$j5Array ( [0] => 0 [1] => 1 [2] => 1 [3] => 2 [4] => 5 [5] => 3 [6] => 4 ) $i4$j4Array ( [0] => 0 [1] => 1 [2] => 1 [3] => 2 [4] => 3 [5] => 5 [6] => 4 ) $i4$j5Array ( [0] => 0 [1] => 1 [2] => 1 [3] => 2 [4] => 3 [5] => 5 [6] => 4 ) $i5$j5Array ( [0] => 0 [1] => 1 [2] => 1 [3] => 2 [4] => 3 [5] => 4 [6] => 5 ) Array ( [0] => 0 [1] => 1 [2] => 1 [3] => 2 [4] => 3 [5] => 4 [6] => 5 )