没啥好说的,基础算法
private function dichotomia(p_list:Array,low:int, height:int ,p_uint:uint):int
{
var cIndex:int = (low+height>>1)>>0;//当前取得的值
var p:int = p_list[cIndex];
if(low == height){
return -1;
}
var indexL:int = cIndex;//左边索引的最大值
var indexR:int = cIndex + 1; //右边索引的最小值
if(p_uint < p){
return dichotomia(p_list, low, indexL,p_uint);
}else if(p_uint > p){
return dichotomia(p_list, indexR, height,p_uint);
}
return cIndex;
}