php之选择排序

来源:互联网 发布:如何定义二维json数组 编辑:程序博客网 时间:2024/06/04 18:58

php之选择排序


思路:

  1. 假设有n个数据,则需要n-1趟次找出最大值下标并交换;
  2. 每一趟的比较中,都需要从”剩余数据”中找出最大元素的下标,第一趟剩余数据为n个,第二趟剩余数据为n-1个…;
  3. 每一趟找出最大值的元素都和”剩余数据”的最后一个元素交换位置。
//直接插入排序function selectSort($arr){   $len = count($arr);  for($i=0;$i<$len-1;$i++)  {     $maxpos = 0;//最大值下标,先假定是第一个     for($j=0;$j<$len-$i;$j++)     {       if($arr[$j]>$arr[$maxpos])       {         $maxpos = $j;       }     }     // 每一趟找出最大值的元素都和"剩余数据"的最后一个元素交换     $temp = $arr[$maxpos];     $arr[$maxpos] = $arr[$len-$i-1];     $arr[$len-$i-1] = $temp;  }}
0 0
原创粉丝点击