选择排序:

选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理如下。首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。

代码实现:

$arr = [1, 21, 13, 4, 4, 26, 17, 8];

function select($arr)
{
  $size = count($arr);
  for($i=0; $i<$size-1; $i++){
    $minval = $arr[$i];
    for($j=$i+1; $j<$size; $j++){
      if($minval > $arr[$j]){
        $temp = $minval;
        $minval = $arr[$j];
        $arr[$j] = $temp;
      }
    }
    $arr[$i] = $minval;

  }

  return $arr;
}

var_dump(select($arr));

最新文章

  1. 用原生javascript实现在页面动态显示时间
  2. 《InsideUE4》GamePlay架构(十)总结
  3. Word中的字体大小
  4. 分析app和wap手机网站的不同
  5. 记一个奇怪的python异常处理过程
  6. windows下如何使用makefile编译
  7. django如何检查创建的模型(model)是否有语法错误或者逻辑错误
  8. leetcode题解: Remove Duplicates from Sorted List(已排序单链表去重)
  9. 仿QQ注册验证码的实现。
  10. 【学习总结】OS X , IOS , IOS SDK , XCode之间的关系
  11. VC6.0中重载操作符函数无法访问类的私有成员
  12. 【深入了解cocos2d-x 3.x】定时器(scheduler)的使用和原理探究(3)
  13. Java获取客户端真实IP地址的两种方法
  14. 深耕教育行业,RealSeer联合黑晶科技发布“AR超级教室”
  15. Exception in thread &quot;http-bio-8080-exec-2&quot; java.lang.OutOfMemoryError: PermGen space[解决方案]
  16. 【AGC030F】Permutation and Minimum DP
  17. PO、POJO、BO、DTO、VO之间的区别(转)
  18. 小程序解决方案 Westore - 组件、纯组件、插件开发
  19. Zookeeper简介说明
  20. Spring 集成 MemCache

热门文章

  1. centOS升级部分功能后,不能进入桌面(桌面)
  2. python socket和简单tcp通信实现
  3. 知问前端——Ajax登录
  4. Mantis 从Windows 迁移到Linux上
  5. Item 6 消除过期的对象引用
  6. 【LuoguP3038/[USACO11DEC]牧草种植Grass Planting】树链剖分+树状数组【树状数组的区间修改与区间查询】
  7. 关于auto-keras训练cnn模型
  8. list互转datatable 支持Nullable转换
  9. Spark-2.3.2【SparkStreaming+SparkSQL-实时仪表盘应用】
  10. linux percpu机制解析【转】