xchange 发表于 2005 年 10 月 15 日 18:57:25

对于更新不频繁的部分可以用缓存

小人物大英雄 发表于 2005 年 10 月 15 日 19:39:57

下面是引用winsock于2005-10-15 18:22发表的:


不错,递归是遍历树的好算法,代码也简单,几行代码就可以解决大问题,
但他受到堆栈的限制。相对而言, 使用非递的算法来遍历树,代码是要复杂些,
但非递归的算法来遍历树的话,所需的系统资源(尤其是内存)比递归少得多,
.......
SQL的话用递归也并不一定会增加次数。。。先算出条件最后再进行一次查询就可以了~

非递的算法来遍历树,代码是要复杂些,

的确呢,特别是在树比较复杂的时候特别复杂了。。。

小人物大英雄 发表于 2005 年 10 月 15 日 19:40:52

挖哈哈,,,这里还不错居然偶们三个还可以讨论起来

姜运涛 发表于 2005 年 10 月 16 日 14:48:29

偶是外行人
来热闹来地

waitme 发表于 2005 年 10 月 16 日 17:30:55

支持呀~~~~~~

kukily 发表于 2005 年 10 月 18 日 18:18:33

不懂PHP~

小人物大英雄 发表于 2005 年 10 月 14 日 13:26:30

两段代码的执行速度测试~~

今天偶然想到一个有趣的测试,使用while或者for等很容易构成循环体,而使用函数自身调用也可以构成循环体,哪种更快呢?


<?php
$timestamp = time();
$mtime = explode(' ', microtime());
$starttime = $mtime + $mtime;

while($a <100){
  echo $a." ";
  $a++;
}

$mtime = explode(' ', microtime());
$totaltime = number_format(($mtime + $mtime - $starttime), 6);
echo "<br>".$totaltime."<br>";

?>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
0.000286

<?php

$timestamp = time();
$mtime = explode(' ', microtime());
$starttime = $mtime + $mtime;

a();
function a($a=''){
 echo $a." ";
 $a++;
 $a<100 && a($a);
}

$mtime = explode(' ', microtime());
$totaltime = number_format(($mtime + $mtime - $starttime), 6);
echo "<br>".$totaltime."<br>";
?>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
0.000587
页: 1 2 [3]
查看完整版本: 两段代码的执行速度测试~~