顺序查找

从表的一端开始,顺序扫描表,依次将扫描到的结点关键字和给定值(假定为a)相比较,若当前结点关键字与a相等,则查找成功;若扫描结束后,仍未找到关键字等于a的结点,则查找失败。

说白了就是,从头到尾,一个一个地比,找着相同的就成功,找不到就失败。很明显的缺点就是查找效率低。

适用于线性表的顺序存储结构和链式存储结构。

平均查找长度

例如上表,查找1,需要1次,查找2需要2次,依次往下推,可知查找16需要16次,

可以看出,我们只要将这些查找次数求和(我们初中学的,上底加下底乘以高除以2),然后除以结点数,即为平均查找长度。

设n=节点数

平均查找长度=(n+1)/2

php实现

function seq_sch($array, $n, $k) { 
  for($i=0; $i<$n; $i++) { 
      if( $array[$i]==$k)
      break; 
  } 
  if ($i<$n) { 
      return $i; 
  }else{ 
      return -1; 
  } 
}

results matching ""

    No results matching ""