javascript中冒泡排序是什么意思

在JavaScript中,冒泡排序是一种排序方法,原理是把一个数组中的每一个数从前往后依次进行比较,根据大小交换位置,每一轮的比较都确定出一个当轮比较的最大值,最终实现数组的大小排序。

javascript中冒泡排序是什么意思

本教程操作环境:windows10系统、javascript1.8.5版、Dell G3电脑。

javascript中冒泡排序是什么意思

一、什么是冒泡排序

冒泡排序,Bubble Sort,通过依次来比较相邻两个元素的大小,在每一次的比较的过程中,两个元素,通过交换来达到有序的目的。

如果一组无序的数列想要从小到大排序,那么两个元素比较,通过交换来实现,左边的元素要比右边的元素要小。

立即学习“Java免费学习笔记(深入)”;

如果一组无序的数列想要从大到小排序,那么两个元素比较,通过交换来实现,左边的元素要比右边的元素要大。

就像碳酸饮料中的气泡一样,从底部一直冒泡到顶部。

其原理就是从把一个数组中的每一个数从前往后依次进行比较,然后根据大小交换位置,每一轮的比较都确定出一个当轮比较的最大值,最终实现数组的大小排序。

二、举个例子

假如有 2,4,7,5,3,6,1 这组数

第一轮:

i=0;

j(内层循环)循环 6次,内层循环做的工作:相邻两个数比较,大的最终会放在后面,小的在前,一次循环

外层循环控制次数,内层循环做判断

j=0 1 2 3 4 5

2 2 2 2 2 2 24 4 4 4 4 4 47 7 7 5 5 5 55 5 5 7 3 3 33 3 3 3 7 6 66 6 6 6 6 7 11 1 1 1 1 1 7arr[0] arr[1] arr[2]arr[1] arr[2] arr[3]

登录后复制

第二轮:

i=1;

j(内层循环)循环 5次

j=0 1 2 3 4 5

2 2 2 2 2 24 4 4 4 4 45 5 5 3 3 33 3 3 5 5 56 6 6 6 6 11 1 1 1 1 67 7 7 7 7 7arr[0] arr[1] arr[2]arr[1] arr[2] arr[3]

登录后复制

第三轮:

i=2;

j(内层循环)循环 4次

2 2 2 2 24 4 3 3 33 3 4 4 45 5 5 5 11 1 1 1 56 6 6 6 67 7 7 7 7

登录后复制

第四轮:

i=3;

j(内层循环)循环 3次

2 2 2 23 3 3 34 4 4 11 1 1 45 5 5 56 6 6 67 7 7 7

登录后复制

第五轮:

i=4;

2 2 23 3 11 1 34 4 45 5 56 6 67 7 7

登录后复制

第六轮:

i=5;

2 11 23 34 45 56 67 7

登录后复制

// 示例1:function show(){var arr=[2,4,7,5,3,6,1];for(var i=0;i<arr.length-1;i++){for(var j=0;j arr[j+1] ){var temp = arr[j];arr[j] = arr[j+1];arr[j+1] = temp;}}}console.log(arr);}// 示例2:        

登录后复制

以上就是javascript中冒泡排序是什么意思的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2937426.html

(0)
上一篇 2025年3月11日 21:11:57
下一篇 2025年2月19日 23:43:35

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • JavaScript怎么求两个数的最大公约数

    在JavaScript中,可利用function语句、if语句配合“%”、“===”运算符求两个数的最大公约数,语法为“function gcd(x,y){if(x%y===0){return y;}return gcd(y,x%y)}”。…

    2025年3月11日
    200
  • javascript operator(运算符)有哪些?

    operator有:1、算术运算符,包含“+”、“-”、“*”等;2、赋值运算符,包含“=”、“+=”、“-=”等;3、比较运算符,包含“==”、“===”等;4、逻辑运算符,包含“&&”、“||”等;5、位运算符,包含“&…

    2025年3月11日
    200
  • javascript怎么去掉余数

    在JavaScript中,去掉余数也就是去除小数点后的数值,可以利用parseInt()函数来实现;该函数可以解析一个字符串并且返回一个整数,语法为“parseInt(除法结果)”。 本教程操作环境:windows10系统、javascri…

    2025年3月11日
    200
  • javascript有选择器吗

    javascript有选择器。常用js选择器有:getElementById()、getElementsByName()、getElementsByTagName()、querySelector()、querySelectorAll()等。…

    2025年3月11日
    200
  • javascript怎么实现除法保留两位小数

    实现方法:1、利用“/”运算符进行除法运算,语法“数值1 / 数值2”;2、使用“除法运算的结果.toFixed(2)”或“Math.floor(除法运算的结果*100)/100”语句来保留两位小数。 本教程操作环境:windows7系统、…

    2025年3月11日 编程技术
    200
  • javascript中数据类型转换分为哪两种

    javascript的两种数据类型转换:1、显式类型转换(又称强制类型转换),主要通过使用JavaScript内置的函数来转换数据;2、隐式类型转换,是指JavaScript根据运算环境自动转换值的类型。 本教程操作环境:windows7系…

    2025年3月11日
    200
  • JavaScript怎么判断相不相等

    JavaScript判断相不相等的方法:1、使用“==”或“!=”运算符,比较两个操作数的值是否相等;2、使用“===”或“!==”运算符,比较两个操作数的值是否相等,同时检测它们的类型是否相同。 本教程操作环境:windows7系统、ja…

    2025年3月11日
    200
  • javascript对象分为哪两大类

    javascript的两类对象:1、宿主对象(host Objects),是由JavaScript宿主环境提供的对象,它们的行为完全由宿主环境决定;2、内置对象(Built-in Objects),是由JavaScript语言提供的对象。 …

    2025年3月11日
    200
  • JavaScript有没有for循环

    JavaScript中有for循环。JavaScript语言中的for循环用于多次执行代码块,它是JS中常用的一个循环工具,适合在已知循环次数时使用;语法“for(初始化表达式;条件表达式;变量更新){条件表达式为true时执行的代码}”。…

    2025年3月11日 编程技术
    200
  • javase和JavaScript是什么

    javase指的是“Java标准版”,是运行JAVA程序不可缺少的环境,它用于开发和部署在桌面、服务器、实时环境中使用的Java应用程序。JavaScript是一种跨平台的解释型、弱类型的脚本语言,常用来为网页添加各式各样的动态功能。 本教…

    2025年3月11日
    200

发表回复

登录后才能评论