JS实现直接选择排序
2015-06-21 10:49
721 查看
直接选择排序和直接插入排序类似,都将数据分为有序区和无序区,所不同的是直接插入排序是将无序区的第一个元素直接插入到有序区以形成一个更大的有序区,而直接选择排序是从无序区选一个最小的元素直接放到有序区的最后。
第一趟从0到n-1中找到最小的元素,假设为a[min],把a[min]与a[0]交换,这时a[0]是最小的了。第二趟从1到n-1中找到最小的元素(a[0]已经是有序的了,我们不用再管它),把这时的最小元素a[min]与a[1]交换(也就是放到有序区的最后),如此类推。
第一趟从0到n-1中找到最小的元素,假设为a[min],把a[min]与a[0]交换,这时a[0]是最小的了。第二趟从1到n-1中找到最小的元素(a[0]已经是有序的了,我们不用再管它),把这时的最小元素a[min]与a[1]交换(也就是放到有序区的最后),如此类推。
<script> function selectSort(arr){ var len=arr.length; var temp,i,j,min; for(i=0;i<len;i++){ min=i; for(j=i+1;j<len;j++){ if(arr[j]<arr[min]){ min=j; } } if(min!=i){ temp=arr[min]; arr[min]=arr[i]; arr[i]=temp; } } } var arr=[12,30,21,15,40,26,33]; selectSort(arr); document.write(arr); </script>
相关文章推荐
- JQuery1——基础($对象,选择器,对象转换)
- Android学习笔记(二九):嵌入浏览器
- Android java 与 javascript互访(相互调用)的方法例子
- JavaScript演示排序算法
- javascript实现10进制转为N进制数
- 2019年开发人员应该学习的8个JavaScript框架
- HTML中的script标签研究
- 异步流程控制:7 行代码学会 co 模块
- JavaScript拆分字符串时产生空字符的原因
- IE8开发人员工具教程(二)
- 在flex中执行一个javascript方法的简单方式
- Flex结合JavaScript读取本地路径的方法
- PowerShell中执行Javascript的方法示例
- javascript asp教程第六课-- response方法
- javascript asp教程More About Recordsets
- javascript asp教程第十二课---session对象
- javascript asp教程创建数据库连接
- javascript asp教程错误处理
- javascript asp教程第十课--global asa