算法系列(三)

简介:

那么接下来就是选择排序:

  选择排序就是先选数组中最大的一个,再选剩下中的最大一个,如此反复直到最后一个,其思想就是平时我们的一般正常的排序思想。

接下来用JS代码来实现:

复制代码
 1 //选择排序
2 function SelectionSort(arr){
3 for(var i=0;i<arr.length-1;i++){ //要循环的次数
4 var temp=i;//默认的最小数
5 for(var j=i+1;j<arr.length;j++){//每次大循环将默认最小数与其后面的所有数相比,得到真正的最小数给默认值的下标
6 if(arr[temp ] > arr[j]){
7 temp =j;
8 }
9 }
10 var tempdata=arr[temp ];//交换默认与真正的最小值
11 arr[temp ]=arr[i];
12 arr[i]=tempdata ;
13 }
14 return arr ;
15 }
复制代码

 本文转自欢醉博客园博客,原文链接http://www.cnblogs.com/zhangs1986/archive/2012/03/07/2383570.html如需转载请自行联系原作者


欢醉

相关文章
|
算法 搜索推荐 Shell
带你快速掌握使用c++写一些基本的算法
带你快速掌握使用c++写一些基本的算法
74 0
|
5月前
|
算法
算法题(1)
算法题(1)
155 62
|
5月前
|
算法
算法题(7)
算法题(7)
20 3
|
自然语言处理 算法 程序员
解答算法题的一个小技巧
解答算法题的一个小技巧
|
算法
算法
一、算法 常见的图查找算法包括: 1. 深度优先搜索(DFS):从图中的一个节点开始,沿着一条路径一直深入直到无法再深入为止,然后回溯到上一个节点,继续深入其他路径,直到找到目标节点或遍历完所有节点。 2. 广度优先搜索(BFS):从图中的一个节点开始,先访问它的所有邻居节点,然后再依次访问邻居的邻居节点,直到找到目标节点或遍历完所有节点。 3. Dijkstra算法:用于在带权有向图中找到从一个节点到其他节点的最短路径。该算法通过不断更新节点的最短距离来逐步找到最短路径。 4. A*算法:类似于Dijkstra算法,但在计算最短路径时加入了启发式函数,用于估计目标节点的距离,从而加速搜索过程
404 0
推公式算法的实现
推公式算法的实现
推公式算法的实现
|
存储 算法 测试技术
《算法》世界
一.什么是算法 算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题。不同的算法可能用不同的时间、空间或效率来完成同样的任务。一个算法的优劣可以用空间复杂度与时间复杂度来衡量。一个算法必须具有:有穷性、确切性、输入项、输出项、可行性五个性质。
234 0
《算法》世界
|
存储 算法 搜索推荐
C#算法大全(上)
今天有人想让我搞一期C#算法大全。算法就算法,安排上!
|
算法 前端开发 rax
举轻若重,于无声处听惊雷,那些平平无奇的伟大算法
遥想笔者读大学时在技术讨论时多是储如i+=(++i)+(i++)之类的孔乙己式的问题,而最近我们关注的热点要不是删库跑路坐牢的程序员,要不是员工离职倾向分析系统;而反观国外大神的博客,要不就是这种切入点非常简单,但是最终能够升华至编程之道层面的举轻若重的文章,要不就是秀出那些智商碾压的神仙代码,从这个角度上看我们国内的IT技术氛围还有极大的提升空间。
举轻若重,于无声处听惊雷,那些平平无奇的伟大算法
|
算法 C++ 编译器