首页 技术 正文
技术 2022年11月23日
0 收藏 304 点赞 3,828 浏览 1741 个字

 

//1.选择排序:
//从小到大排序:通过比较首先选出最小的数放在第一个位置上,然后在其余的数中选出次小数放在第二个位置上,依此类推,直到所有的数成为有序序列。var arr2=[19, 8, 27, 6, 15, 4];
for(var i=0;i<arr2.length-1;i++){
for(var j=i+1;j<arr2.length;j++){
if(arr2[j]<arr2[i]){
var temp=arr2[j];
arr2[j]=arr2[i];
arr2[i]=temp;
}
}
}
console.log(arr2);//4,6,8,15,19,27
/*
* //第一轮:第一个数字和后面的每一位进行比较,选择出最小的一个放在第一位上。
[8, 19, 27, 6, 15, 4] //8和19比较选择出8放在第一位
[8, 19, 27, 6, 15, 4] //8和27比较选择出8放在第一位
[6, 19, 27, 8, 15, 4] //8和6比较选择出6放在第一位
[6, 19, 27, 8, 15, 4] //6和15比较选择出6放在第一位
[4, 19, 27, 8, 15, 6] //6和4比较选择出4放在第一位 //第二轮:第二个数字和后面的每一位进行比较,选择出最小的一个放在第二位上。
[4, 19, 27, 8, 15, 6] //19和27比较选择出19放在第二位
[4, 8, 27, 19, 15, 6] //19和8比较选择出8放在第二位
[4, 8, 27, 19, 15, 6] //8和15比较选择出8放在第二位
[4, 6, 27, 19, 15, 8] //8和6比较选择出6放在第二位 *
//第三轮:第三个数字和后面的每一位进行比较,选择出最小的一个放在第三位上。
[4, 6, 19, 27, 15, 8] //27和19比较选择出19放在第三位
[4, 6, 15, 27, 19, 8] //19和15比较选择出15放在第三位
[4, 6, 8, 27, 15, 19] //15和8比较选择出8放在第三位//第四轮:第四个数字和后面的每一位进行比较,选择出最小的一个放在第四位上。[4, 6, 8, 15, 27, 19] //27和15比较选择出15放在第四位
[4, 6, 8, 15, 27, 19] //15和19比较选择出15放在第四位// 第五轮:第五个数字和后面的每一位进行比较,选择出最小的一个放在第五位上。[4, 6, 8, 15,19, 27] //27和19比较选择出19放在第五位 */

  

//2.冒泡排序:  从头到尾,比较相邻的两个元素的大小,如果符合交换条件,交换两个元素的位置。每一轮比较中,都会选出一个最大的数,放在正确的位置
var arr = [19, 8, 27, 6, 15, 4];
for(var i=0;i<arr.length;i++){
for(var j=0;j<arr.length-i;j++){ //因为每一轮比较都会选择出最大的一位放在最后,下次再次比较时不用和已经选择出的进行比较,所以才会有 j<arr.length-i ;
if(arr[j]>arr[j+1]){ //如果前面的数比后面的数大,定义一个临时变量来交换两个数的位置。
var temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
console.log(arr);// 4,6,8,15,19,27
//从小到大排序:
/*
* //第一轮:
[8, 19, 27, 6, 15, 4]
[8, 19, 27, 6, 15, 4]
[8, 19, 6, 27, 15, 4]
[8, 19, 6, 15, 27, 4]
[8, 19, 6, 15, 4, 27]
// 第一轮选出了最大的元素27放在了数组的最后一位 //第二轮:
[8, 19, 6, 15, 4, 27]
[8, 6, 19, 15, 4, 27]
[8, 6, 15, 19, 4, 27]
[8, 6, 15, 4, 19, 27] //第二轮选出了最大的元素19放在了数组的倒数第二位
*
//第三轮:
[6, 8, 15, 4, 19, 27]
[6, 8, 15, 4, 19, 27]
[6, 8, 4, 15, 19, 27]//第三轮选出了最大的元素15放在了数组的倒数第三位//第四轮:[6, 8, 4, 15, 19, 27]
[6, 4, 8, 15, 19, 27]// 第四轮选出了最大的元素8放在了数组的倒数第四位// 第五轮:[4, 6, 8, 15, 19, 27]// 第五轮选出了最大的元素6放在了数组的第二位
*/

  

  

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:8,991
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,506
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,349
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,134
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,766
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,844