当前位置: 首页 > news >正文

冒泡排序算法优化

一 概述

        冒泡排序是一种简单的交换排序算法,其核心思想是通过相邻元素比较和交换将最大元素逐步移动到数组末尾。

二、基础冒泡排序

 void bubbleSort(int arr[], int n) {
    for (int i = 0; i < n-1; i++) {
        for (int j = 0; j < n-i-1; j++) {
            if (arr[j] > arr[j+1]) {
                swap(arr[j], arr[j+1]);
            }
        }
    }
}
                    

                  
三、优化方案及实现

1 提前终止优化(最优情况时间复杂度O(n))
   void optimizedBubble1(int arr[], int n) {
    bool swapped;
    for (int i = 0; i < n-1; i++) {
        swapped = false;
        for (int j = 0; j < n-i-1; j++) {
            if (arr[j] > arr[j+1]) {
                swap(arr[j], arr[j+1]);
                swapped = true;
            }
   

http://www.dtcms.com/a/43910.html

相关文章:

  • Spring Security是什么?如何使用Spring Security进行安全控制?
  • 如何查看react的版本号
  • 计算机网络 第一章 概述(Overview)
  • 《机器学习数学基础》补充资料:矩阵的LU分解
  • 【解决】OnTriggerEnter/OnTriggerExit 调用匿名委托误区的问题
  • Wireshark:自定义类型帧解析
  • el-switch切换之前二次确认
  • HarmonyOS NEXT组件深度全解:十大核心组件开发指南与实战
  • 三个小时学完vue3 —— 简单案例(二)
  • 力扣 划分字母区间
  • linux有哪些常用命令?
  • 华为在不同发展时期的战略选择(节选)
  • 达梦数据库系列之安装及Mysql数据迁移
  • Spring 集成 MyBatis 操作指南(详细实例)
  • 数据结构:树的概念
  • React Router 完全指南:从基础到高级实践
  • 数据基础4: 线性代数基础行列式(矩阵)
  • ctfshow——域名TXT记录泄露
  • React状态管理进阶(四):从Redux到原子革命的终极指南
  • 基于django图书信息管理系统的搭建(增删改查)
  • MySQL系列之远程管理(安全)
  • 前端性能优化
  • 【Java】Tomcat日志
  • ERP系统的库存模块业务逻辑及设计
  • 剖析Kafka持久化底层原理
  • 使用 Kubeflow 和 Ray 构建机器学习平台
  • 使用Semantic Kernel:对DeepSeek添加自定义插件
  • 哈工大《计算机组成原理》第一章笔记
  • 网络参考模型(全)、ARP协议
  • 【Java面试】创建线程有哪几种方式