点击按钮--从大到小排序,可以通过代码中大于号小于号的选择来判定从小到大或者从大到小。

<!DOCTYPE html>
<html>
<head>
<title>maopao</title>
<script>
function maopao(){
//先来一个数组
var num=[2,20,15,9,90,7,11]; //每一轮取一个索引(减1是因为排到最后的时候就是最大的了,一轮结束后i+1)
//控制循环次数
for(var i=0;i<num.length-1;i++){ //控制比较大小的次数,减i是因为排序过了。,。
for(var j=0;j<num.length-1-i;j++){ //对比索引j和j+1数的大小,如果判断不成立就返回到for循环
if(num[j]<num[j+1]){ //拿出来一个空盒子(temp),把num[j]表示的数放进去,num[j]变空
var temp=num[j]; //把num[j+1]表示的数放到num[j]里,num[j+1]变空
num[j]=num[j+1]; //把temp表示的数放到num[j+1],至此两个数完成了位置互换
num[j+1]=temp;
}
}
}
alert(num);
}
</script>
</head>
<body>
<input type="button" value="冒泡" onclick="maopao()">
</body>
</html>

冒泡算法,end,。,

数据结构搞起  QwQ

js超简单冒泡算法的更多相关文章

  1. ECharts.js 超简单入门(本质canvas)

    ECharts.js 超简单入门(本质canvas) 一.总结 一句话总结:echarts这些图标的本质都是canvas. 二.ECharts.js学习(一) 简单入门 EChart.js 简单入门 ...

  2. js超简单日历

    用原生js写了一个超级简单的日历.当做是练习js中的Date类型. 思路: 获取某个日期,根据年份计算出每个月的天数. 利用Date中的getDay()知道该月份的第一天为星期几. 循环创建表格,显示 ...

  3. 用js实现简单排序算法

    一.冒泡排序 var arr1=[3,9,2,7,0,8,4]; for(var i=0;i<arr1.length;i++){ for(var j=i+1;j<arr1.length;j ...

  4. js数值排序中冒泡算法的4种简单实现

    实现数组排序的算法很多,其中冒泡算法是比较简单的冒泡的基本原理是相邻的两个数进行比较,按照排序的条件进行互换,例如对数值从小到大排序,随着不断的互换,最大的那个值会慢慢冒泡到数组的末端基于这个原理我们 ...

  5. 超简单的OpenGL & WebGL & Three.js介绍_1

    专业解释 什么是OpenGL OpenGL(Open Graphics Library即开放图形库或者“开放式图形库”)是用于渲染2D.3D矢量图形的跨语言.跨平台的应用程序编程接口(API). 这个 ...

  6. ASP.NET中一种超简单的Ajax解决方案

    为什么是Ajax2? 因为之前有一个blqw.Ajax,并且已经在项目中投入使用了,但是没有这个方便,这个是后来才弄的,为了纪念第一版的blqw.Ajax,所以这个就2了... 话说看了评论才发现,原 ...

  7. javascript之冒泡算法

    今天看了js中数组的方法,其中sort()方法用于排序,就让我想到学C语言的时候有一个冒泡算法,就想用js写一个. <script> var arr=[1,30,20,40,21,31,1 ...

  8. 冒泡算法(C++模板实现)

    冒泡排序 从整体上看,冒泡排序是一种稳定排序,即排序完成后,原本序列中的键值相等的元素相对位置不会发生改变.算法的时间复杂度是O(n2),空间复杂度为O(1),即这是一个"就地算法" ...

  9. 打造支持apk下载和html5缓存的 IIS(配合一个超简单的android APP使用)具体解释

    为什么要做这个看起来不靠谱的东西呢? 由于刚学android开发,还不能非常好的熟练控制android界面的编辑和操作,所以我的一个急着要的运用就改为html5版本号了,反正这个运用也是须要从serv ...

随机推荐

  1. linux运维、架构之路-Kubernetes集群部署TLS双向认证

    一.kubernetes的认证授权       Kubernetes集群的所有操作基本上都是通过kube-apiserver这个组件进行的,它提供HTTP RESTful形式的API供集群内外客户端调 ...

  2. Git 使用的问题总结

    1.git stash pop 显示 xxx already exists, no checkout 当我们先使用 git stash save -u '保存信息说明' 来储藏更改,然后拉取代码 gi ...

  3. php部署调优

    转自Laravel学院,  作者:学院君 最近刚好看到一些php.ini优化问题处理. 很多文章都是把配置全部翻译. (内容翻译太多和流程结构写的不是很清晰,看起来也头大.但是建议全部内容看几遍了解一 ...

  4. 基于Anaconda安装Tensorflow 并实现在Spyder中的应用

    基于Anaconda安装Tensorflow 并实现在Spyder中的应用 Anaconda可隔离管理多个环境,互不影响.这里,在anaconda中安装最新的python3.6.5 版本. 一.安装 ...

  5. Linux内核调试方法总结之死锁问题分析

    死锁问题分析 死锁就是多个进程(线程)因为等待别的进程已占有的自己所需要的资源而陷入阻塞的一种状态,死锁状态一旦形成,进程本身是解决不了的,需要外在的推动,才能解决,最重要的是死锁不仅仅影响进程业务, ...

  6. 服务器上安装搭建node环境

    一.版本 : node  v4.4.3 npm  v2.15.1 pm2  v1.1.3 express v4.13.4 二.node安装与环境配置 新建node安装目录,与node项目目录     ...

  7. VMware 虚拟化编程(10) — VMware 数据块修改跟踪技术 CBT

    目录 目录 前文列表 数据块修改跟踪技术 CBT 为虚拟机开启 CBT CBT 修改数据块偏移量获取函数 QueryChangedDiskAreas changeId 一个 QueryChangedD ...

  8. 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_09 序列化流_2_对象的序列化流_ObjectOutputStream

    创建person对象.生成构造方法全参和无参.getter和setter 抛出异常:没有序列化异常 接口的源码 啥都没有.就起到一个标记的作用 用二进制存的

  9. 阶段1 语言基础+高级_1-3-Java语言高级_03-常用API第二部分_第5节 StringBuilder类_1_StringBuilder的原理

    字符串不可变.字符串的缓冲区是可以变的 字符串Sting的底层,被final修饰的不可变的数组 a+b+c最终会产生5个字符串

  10. ios-wx.chooseImage选择图片后,在ios中选中的图片未显示

    解决办法:微信引用1.2.0的版本 http://res.wx.qq.com/open/js/jweixin-1.2.0.js 我之前用的版本是:http://res.wx.qq.com/open/j ...