插入排序

<?php
/**
 * 将一列数看成一列有序数列 ,一列待排序数列。然后用待排序数列中数与有序数列的最后数比较。将待排序数放入有序数列的适当位置。
 */
//由小到大    linux内核,算法,计算机网络技术,数据库
function insertSort(&$arr){
	
	for($i=1;$i<count($arr);$i++){ //$i=1 默认第一个数为正确的。
		$insertVal = $arr[$i]; //$insertVal是准备插入的数。
		$insertIndex = $i-1; //准备先要比较的数。
		while($insertIndex>=0&&$insertVal<$arr[$insertIndex]){ //说明还没找到适当位置。
			$arr[$insertIndex+1] = $arr[$insertIndex];  //将数向后移动。
			$insertIndex--;
		}
		//插入
		$arr[$insertIndex+1] = $insertVal;
	}
}
$arr = array(0,5,-1);
insertSort($arr);
print_r($arr);


?>

  

posted @ 2013-07-23 02:57  simpman  阅读(93)  评论(0)    收藏  举报