PHP实现的一个冒泡排序,请大家给点意见!

justphp 发布于 2013/12/17 17:29
阅读 201
收藏 1
PHP
function BuddleSort($arr)
{
	$arrLength = count($arr);
	for ($i=0;$i<$arrLength;$i++)
	{
		for ($j=0;$j<$arrLength && isset($arr[$j+1]);$j++)
		{
			if($arr[$j] > $arr[$j+1]){
				$tmp = $arr[$j+1];
				$arr[$j+1] = $arr[$j];
				$arr[$j] = $tmp;
			}
		}
		echo "第".($i+1)."趟:";print_r($arr);echo "</br>";
	}	
}



加载中
0
迷失的月亮
迷失的月亮
有什么亮点吗?
Tuesday
Tuesday
亮点就是在for语句中植入了 isset判断语句.
0
王向平
王向平
千里之行,始于足下!
0
Tuesday
Tuesday

echo"</br>";

楼主, 基础知道呀.

justphp
justphp
<br/>
0
leo108
leo108

for ($j=0;$j<$arrLength && isset($arr[$j+1]);$j++)

这个改成 

for ($j=$i;$j<$arrLength-1;$j++)

比较合适,虽然结果没有问题

justphp
justphp
试试?
0
欣儿
欣儿
不是跟c一样的吗,
0
南湖船老大
南湖船老大

怎么说呢,严格意义上来说,这不能算是冒泡算法。。或者说槽点太多

南湖船老大
南湖船老大
回复 @justphp : leo108 已经指出了一点,还有,正宗的冒泡是外面i++,里面j-- 这样的顺序来的
justphp
justphp
请指出?
0
陨落人间
陨落人间
确定是冒泡?
justphp
justphp
觉得哪里有问题?
返回顶部
顶部