javascript学习5-练习之2冒泡排序算法
2014-04-29 19:58
253 查看
复习冒泡排序算法,同时自己也写了一个排序算法。
实现效果:
1.自己的算法思想:
数组中数据取第一个为默认最小,依次和后面每个数据比较,只要有比其小的就交换直至找出最小的。
然后将第二个数据与其后面所有数据比较,找出最小,依次重复
2.冒泡排序算法思想:
数据从最低端到最高端为
a
......
a[0]
第一轮:将a[0]与a[1]比较,高者上,然后依次比较a[1]和a[2]....a[n-1]和a
每次将大的往上冒
第二轮: 将a[0]与a[1]比较,高者上,然后依次比较a[1]和a[2]...a[n-2]和a[n-1]每次大的往上冒,注意此时第一轮最大的已经排出来,故不需要将[n-1]与
相比较
...
第n轮:将a[0]与a[1]比较高者往上冒。然后 a[1]与a[2]比较,大的往上冒。
此处前面已经排出来了n-1个最大的,一共n+1个数,故此时只有a[0]和a[1]两个没有比出最大的了。到第n轮,数据比较完成。
具体代码如下:
1.我自己的算法代码
2.冒泡排序算法:
实现效果:
1.自己的算法思想:
数组中数据取第一个为默认最小,依次和后面每个数据比较,只要有比其小的就交换直至找出最小的。
然后将第二个数据与其后面所有数据比较,找出最小,依次重复
2.冒泡排序算法思想:
数据从最低端到最高端为
a
......
a[0]
第一轮:将a[0]与a[1]比较,高者上,然后依次比较a[1]和a[2]....a[n-1]和a
每次将大的往上冒
第二轮: 将a[0]与a[1]比较,高者上,然后依次比较a[1]和a[2]...a[n-2]和a[n-1]每次大的往上冒,注意此时第一轮最大的已经排出来,故不需要将[n-1]与
相比较
...
第n轮:将a[0]与a[1]比较高者往上冒。然后 a[1]与a[2]比较,大的往上冒。
此处前面已经排出来了n-1个最大的,一共n+1个数,故此时只有a[0]和a[1]两个没有比出最大的了。到第n轮,数据比较完成。
具体代码如下:
1.我自己的算法代码
//自己的排序算法 var s=[1,2,3,5,77,22,11,14,12,24]; //排序前 document.write("<br/>自己的排序,排序前:<br/>"+s); for (var i=0;i<s.length-1 ;i++ ) { for (var j=i+1;j<s.length;j++ ) { if(s[i]>s[j]) { var temp=s[j]; s[j]=s[i]; s[i]=temp; } } } //排序后 document.write("<br/>自己的排序算法,排序后:<br/>"+s);
2.冒泡排序算法:
//正确的冒泡排序算法 var flag=false; document.write("<br/>冒泡排序,排序前:<br/>"+s); for (var i=0;i<s.length-1 ;i++ ) { for (var j=0;j<s.length-1-i ;j++ ) { if(s[j]>s[j+1]) { var temp=s[j]; s[j]=s[j+1]; s[j+1]=temp; flag=true; } } if(flag) { flag=false; } else { break;//代表一次也没有交换,那么数据完全是顺序的,不需要再执行for循环 } } document.write("<br/>冒泡排序,排序后:<br/>"+s);
相关文章推荐
- [php学习十四]javaScript的基本练习4-对象
- [php学习十三]javaScript的基本练习4-与php的相互调用
- [知了堂学习笔记] javascript DOM练习案例
- javascript学习4-练习之1转置矩阵
- 韩顺平 javascript教学视频_学习笔记16_Object类_闭包_成员函数再说明_聪明的猪小练习
- [知了堂学习笔记] javascript基础练习
- js学习之javascript引用类型object--练习模拟Map和数组去重
- JavaScript 学习笔记十 练习任务系统
- JavaScript学习练习程序DOM——爱好选择
- [php学习十一]javaScript的基本练习2
- javascript 学习之原型示例练习--- 实现一个each方法,遍历多维数组
- javascript学习6-练习之3二分查找算法
- A*算法学习 附Javascript 算法实现练习
- javascript 语法学习练习
- [php学习十]javaScript的基本练习
- [php学习十二]javaScript的基本练习3-Dom
- JavaScript 学习笔记十 练习任务系统
- javascript 语法学习练习
- 韩顺平_轻松搞定网页设计(html+css+javascript)_第33讲_Object类_闭包_成员函数再说明_聪明的猪小练习_学习笔记_源代码图解_PPT文档整理
- 学习JavaScript的小程序练习