前端JS算法-冒泡排序

原理:相邻的数据进行两两比较,小数放在前面,大数放在后面,这样一趟下来,最小的数就被排在了第一位,第二趟也是如此,如此类推,直到所有的数据排序完成。

描述:

<1>比较相邻的元素。如果第一个比第二个大,就交换它们两个;

<2>对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对,这样在最后的元素应该会是最大的数;

<3>针对所有的元素重复以上的步骤,除了最后一个;

<4>重复步骤1~3,直到排序完成。

javascript 复制代码
      var arr = [4, 23, 100, 9, 7, 49, 36, 57];

      for (var i = 0; i < arr.length - 1; i++) {
        //确定轮数
        for (var j = 0; j < arr.length - i - 1; j++) {
          //确定每次比较的次数
          if (arr[j] > arr[j + 1]) {
            let tem = arr[j];
            arr[j] = arr[j + 1];
            arr[j + 1] = tem;
          }
        }
         console.log("第" + i + "次排序" + arr);
      }
      console.log("最终排序:" + arr);

这段代码是一个冒泡排序算法的实现,用于将数组按升序排列。

冒泡排序的基本思想是从第一个元素开始,依次比较相邻的两个元素,如果顺序不对则交换它们,一轮比较下来,最大的元素会沉到最后一个位置。

/然后,对剩余的元素重复以上步骤,直到整个数组排序完成。

相关推荐
名字还没想好☜几秒前
Next.js 用 cookies()/headers() 读请求信息:动态渲染触发、缓存失效与在 Server Action 里读写 cookie
前端·javascript·缓存·react·next.js·app router
吃旺旺雪饼的小男孩13 分钟前
U-Net 语义分割详解:原论文、PyTorch 实现与真实消融实
人工智能·pytorch·python·算法
lucas_AI13 分钟前
35 种开源文档抽取配置,只有 4 个跨过 F1 0.5
人工智能·算法·llm
今日无bug18 分钟前
从「拿来主义」到「亲手造轮子」:2 种 MCP 文件服务器写法对比
前端·node.js·mcp
xcyxiner19 分钟前
flutter 运行到模拟器上
android·前端·flutter
用户9210802628619 分钟前
从 COT 到 ThoughtChain:AI 应用为什么需要展示“思考过程”
前端
练习时长一年的RL研究者20 分钟前
与AI对话后对 Actor-Critic 中 TD Target 的 a‘ 来源总结
算法
天真小巫20 分钟前
2026.8.23总结
前端·html
PedroQue9920 分钟前
RouterLink v2.5.0:H5端原生能力全面回归
前端·uni-app
八角丶23 分钟前
Node.js 异步上下文详解(实验驱动)
前端·node.js