js冒泡排序

简介: js冒泡排序

冒泡排序是一种基本的排序算法,它的原理是通过不断地比较相邻的元素,将较大的元素不断向后交换,直到整个数组按照升序排列。


以下是冒泡排序的原生JavaScript实现:


function bubbleSort(arr) {
   var len = arr.length;
   for (var i = 0; i < len - 1; i++) {
      for (var j = 0; j < len - 1 - i; j++) {
         if (arr[j] > arr[j + 1]) {
            // 交换两个元素的位置
            var temp = arr[j];
            arr[j] = arr[j + 1];
            arr[j + 1] = temp;
         }
      }
   }
   return arr;
}
// 示例用法
var arr = [64, 34, 25, 12, 22, 11, 90];
console.log(bubbleSort(arr)); // 输出 [11, 12, 22, 25, 34, 64, 90]


在上述代码中,bubbleSort函数接收一个数组作为参数,并返回排好序的数组。它使用了嵌套的循环来比较相邻的元素,并根据需要进行交换。外层循环控制比较的轮数,内层循环执行实际的比较和交换操作。


最后,使用示例展示了如何使用bubbleSort函数对一个数组进行排序,输出排好序的结果。


相关文章
|
搜索推荐 数据挖掘
CDP数据工具的应用
CDP数据工具的应用
538 10
|
缓存 负载均衡 算法
“软件系统三高问题”高并发、高性能、高可用系统设计经验
​ 总的来说解决三高问题核心就是 “分字诀” 业务分层、系统分级、服务分布、数据库分库/表、动静分离、同步拆分成异步、单线程分解成多线程、原数据缓存分离、分流等等。。。。 直观的表述就是:从前端用的CDN、动静分离,到后台服务拆分成微服务、分布式、负载均衡、缓存、池化、多线程、IO、分库表、搜索引擎等等。都是强调一个“分”字。
5028 0
“软件系统三高问题”高并发、高性能、高可用系统设计经验
|
6月前
|
人工智能 Linux API
OpenClaw是什么?OpenClaw能做什么?OpenClaw定义解析+阿里云/本地部署+大模型配置完整版
2026年,开源AI智能体领域迎来现象级产品——OpenClaw(曾用名Clawdbot,因Logo酷似小龙虾被网友亲切称为“小龙虾”),其以“Local-First”为核心特色,彻底打破传统AI“只说不做”的局限,能通过自然语言指令自主规划任务、调用工具、执行实际操作,涵盖文件管理、邮件收发、日程规划、代码生成、跨平台协同等全场景,真正实现“指令输入→AI规划→工具调用→任务落地”的闭环,成为个人与轻量团队提升效率的核心装备。
1481 3
|
6月前
|
人工智能 自然语言处理 API
OpenClaw(Clawdbot)阿里云部署图文教程,+Claude Code Skill 搭建自动化内容生产线,一键出稿出图推送!
一人运营公众号,40天实现5000+关注者、单篇文章万+阅读——这样的冷启动成绩,并非依赖高强度人工创作,而是借助OpenClaw+Claude Code Skill搭建的自动化内容生产线:仅需一行指令,即可完成出稿、出图、排版、推送全流程,将创作者从重复劳动中解放,专注选题与创意打磨。
2343 8
|
6月前
|
人工智能 安全 API
OpenClaw保姆级教程:阿里云/本地部署配置百炼Coding Plan API+核心Skill清单及常见问题解答
2026年,OpenClaw(昵称“小龙虾”)的核心价值早已不是“能聊天”,而是通过Skills(技能插件)连接工具、网站与系统,实现从“对话建议”到“落地执行”的跨越。但多数用户部署后陷入“装而不用”的困境——要么盲目堆砌技能导致功能冲突,要么忽视安全风险不敢用于关键场景。
1242 1
|
人工智能 物联网 BI
诊断设备企业必看!垂直医疗行业的CRM软件有哪些?
2025年,诊断设备企业竞争核心转向精细化服务。传统CRM难堪重任,垂直医疗CRM成破局关键。本文深度解析八骏医疗云等五大解决方案,揭秘如何通过设备全周期管理、代理商管控、智能耗材预警与私有化部署,构建以客户为中心的服务体系,抢占增长制高点。
564 124
|
10月前
|
JSON 监控 API
拼多多API接口的应用场景介绍
拼多多API是开放平台提供的标准化接口,基于RESTful架构,支持商品管理、订单处理、用户分析与数据报表等自动化场景。通过OAuth 2.0认证和JSON数据格式,助力开发者高效集成电商功能,提升运营效率与业务洞察力。(238字)
1558 2
|
存储 C语言
C语言32位或64位平台下指针的大小
在32位平台上,C语言中指针的大小通常为4字节;而在64位平台上,指针的大小通常为8字节。这反映了不同平台对内存地址空间的不同处理方式。
1479 7
|
消息中间件 算法 Sentinel
只需5分钟,了解常见的四种限流算法
只需5分钟,了解常见的四种限流算法
645 4
|
机器学习/深度学习 人工智能 语音技术
情感识别与表达:FunAudioLLM的情感智能技术
【8月更文第28天】随着人工智能的发展,语音交互系统越来越普遍。其中,情感智能技术成为提高用户体验的关键因素之一。本文将探讨 FunAudioLLM 如何利用情感识别和表达技术来增强语音交互的真实感,并提供具体的代码示例。
1746 0