前端javascript中的排序算法之冒泡排序

server/2024/11/12 13:22:08/

冒泡排序(Bubble Sort)基本思想
经过多次迭代,通过相邻元素之间的比较与交换,使值较小的元素逐步从后面移到前面,值较大的元素从前面移到后面。
大数据往上冒泡,小数据往下沉,也就是小数据在左边,大数据在右边
最简单也是性能最差的排序算法
入门级排序算法

请添加图片描述

代码实现

//不优化直接写
function bubbleSort(data) {console.time("test");for (let i = 0; i < data.length; i++) {for (let j = 0; j < data.length - i - 1; j++) {if (data[j] > data[j + 1]) {let temp = data[j];data[j] = data[j + 1];data[j + 1] = temp;}}}console.timeEnd("test");return data;
}
//优化
function bubbleSort1(data) {console.time("test1");for (let i = 0; i < data.length; i++) {//for (let j = 0; j < data.length - 1 - i; j++) {if (data[j] > data[j + 1]) {let temp = data[j];data[j] = data[j + 1];data[j + 1] = temp;}}}console.timeEnd("test1");return data;}

复杂度

  • 时间复杂度O(1),只用到了几个辅助的常量,i,j
  • 空间复杂度O(n²)

代码测试

    const ret = bubbleSort([10,20,4,9,100,300,123]);console.log("🚀 ~ ret:", ret) // [4, 9, 10, 20, 100, 123, 300]const ret2 = bubbleSort1([10,20,4,9,100,300,123]);console.log("🚀 ~ ret:", ret2) // [4, 9, 10, 20, 100, 123, 300]

http://www.ppmy.cn/server/58231.html

相关文章

数据库基础

数据库基础 概念 数据库&#xff1a;存储数据的仓库 数据库管理系统&#xff1a;操作和管理数据库的软件。 SQL&#xff1a;操作关系型数据库的编程语言&#xff0c;定义了一系列标准。 关系型数据库&#xff1a;建立在关系模型基础上&#xff0c;由多张相互连接的二维表组…

搭建基础库~

前言 项目中会用到工具库、函数库以及一些跟框架绑定的组件&#xff0c;如果这些基础模块每个项目都实现一套&#xff0c;维护起来那真的头大&#xff0c;你说呢&#x1f609; 搭建流程 准备工作 创建文件夹myLib、安装Git以及pnpm 目录大概就系这样子&#xff1a; myLib ├…

如何实现跨域

目录 JSONP (JSON with Padding) CORS (Cross-Origin Resource Sharing) Nginx代理 Node.js中间件代理 Vue axios实现(或其他前端HTTP库) 原生JS、jQuery Ajax等其他方式 跨域实现是Web开发中常见的需求,主要涉及到不同源(协议、域名、端口三者之一不同即为不同源)之…

docker安装tomcat容器

docker安装tomcat容器 1、拉取镜像 docker pull tomcat:8.5.46-jdk8-openjdk2、运行 docker run -d --name tomcat tomcat:8.5.46-jdk8-openjdk ​ docker cp tomcat:/usr/local/tomcat/conf /data/tomcat/ ​ docker rm -f tomcat ​ docker run -d --name tomcat -p 8…

基于YOLOv9的脑肿瘤区域检测

数据集 脑肿瘤区域检测&#xff0c;我们直接采用kaggle公开数据集&#xff0c;Br35H 数据中已对医学图像中脑肿瘤位置进行标注 数据集我已经按照YOLO格式配置好&#xff0c;数据内容如下 数据集中共包含700张图像&#xff0c;其中训练集500张&#xff0c;验证集200张 模型训…

从数据仓库到数据湖(上):数据湖导论

文章目录 一、什么是数据湖&#xff1f;起源数据湖的特征 二、为什么要用数据湖&#xff1f;三、数据湖与数据仓库的区别数据仓库和数据湖的对比 四、数据湖本质数据存储架构数据处理工具&#xff1a;三类第一类工具第二类工具第三类工具 小结 五、总结六、参考资料 一、什么是…

TCP协议深入解析

引言 TCP(Transmission Control Protocol,传输控制协议)是互联网中最重要的协议之一,它为上层应用提供可靠的端到端数据传输服务。TCP协议的设计非常精巧,包含了许多复杂而巧妙的机制。下面让我们一起深入探讨TCP协议的工作原理。 一. TCP连接的建立和断开 连接建立:TCP使用三…

【Sql Server】sql server 2019设置远程访问,外网服务器需要设置好安全组入方向规则

大家好&#xff0c;我是全栈小5&#xff0c;欢迎来到《小5讲堂》。 这是《Sql Server》系列文章&#xff0c;每篇文章将以博主理解的角度展开讲解。 温馨提示&#xff1a;博主能力有限&#xff0c;理解水平有限&#xff0c;若有不对之处望指正&#xff01; 目录 前言1、无法链接…