news 2026/8/29 9:09:42

经典算法题型之排序算法(三)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
经典算法题型之排序算法(三)

冒泡排序的第二种写法

第二种写法是在第一种写法的基础上改良而来的:

public static void bubbleSort(int[] arr) { // 初始时 swapped 为 true,否则排序过程无法启动 boolean swapped = true; for (int i = 0; i < arr.length - 1; i++) { // 如果没有发生过交换,说明剩余部分已经有序,排序完成 if (!swapped) break; // 设置 swapped 为 false,如果发生交换,则将其置为 true swapped = false; for (int j = 0; j < arr.length - 1 - i; j++) { if (arr[j] > arr[j + 1]) { // 如果左边的数大于右边的数,则交换,保证右边的数字最大 int temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; // 表示发生了交换 swapped = true; } } } }

最外层的 for 循环每经过一轮,剩余数字中的最大值仍然是被移动到当前轮次的最后一位。这种写法相对于第一种写法的优点是:如果一轮比较中没有发生过交换,则立即停止排序,因为此时剩余数字一定已经有序了。

看下图演示:

图中可以看出:

  • 第一轮排序将数字 6 移动到最右边;
  • 第二轮排序将数字 5 移动到最右边,同时中途将 1 和 2 排了序;
  • 第三轮排序时,没有发生交换,表明排序已经完成,不再继续比较。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/21 14:01:13

SSH连接缓慢?Miniconda-Python3.11镜像DNS配置优化

SSH连接缓慢&#xff1f;Miniconda-Python3.11镜像DNS配置优化 在远程开发日益普及的今天&#xff0c;AI工程师、数据科学家和运维人员几乎每天都要通过SSH连接到云服务器或容器实例。你是否也经历过这样的场景&#xff1a;敲下ssh userhost后&#xff0c;终端卡住不动&#xf…

作者头像 李华
网站建设 2026/8/25 13:14:01

AlphaFold 3蛋白质-核酸复合物预测实战手册:从入门到精通

AlphaFold 3蛋白质-核酸复合物预测实战手册&#xff1a;从入门到精通 【免费下载链接】alphafold3 AlphaFold 3 inference pipeline. 项目地址: https://gitcode.com/gh_mirrors/alp/alphafold3 AlphaFold 3作为结构生物学领域的革命性突破&#xff0c;不仅延续了蛋白质…

作者头像 李华
网站建设 2026/8/29 6:47:07

GitHub Pull Request审查流程|Miniconda-Python3.11协作开发

GitHub Pull Request审查流程&#xff5c;Miniconda-Python3.11协作开发 在人工智能项目中&#xff0c;你是否经历过这样的场景&#xff1a;同事提交了一个Jupyter Notebook&#xff0c;声称模型准确率提升了5%&#xff0c;但你在本地运行时却报错“ModuleNotFoundError”&…

作者头像 李华
网站建设 2026/8/29 6:48:10

打造高转化技术内容:以TensorFlow-v2.9镜像为切入点推广算力产品

打造高转化技术内容&#xff1a;以TensorFlow-v2.9镜像为切入点推广算力产品 在AI模型越来越“重”、训练任务越来越复杂的今天&#xff0c;一个开发者最不想面对的场景是什么&#xff1f;不是算法调参失败&#xff0c;也不是数据质量差——而是当你满怀信心打开终端准备跑第一…

作者头像 李华
网站建设 2026/8/29 6:47:04

OpenMV项目应用:循迹小车视觉部分实现

用OpenMV打造会“看路”的小车&#xff1a;从颜色识别到实时循迹的完整实战你有没有试过让一辆小车自己沿着地上的黑线跑&#xff1f;传统的做法是给它装几个红外传感器——就像盲人拄拐杖一样&#xff0c;靠“碰”来感知路线。但这种方式有个致命弱点&#xff1a;光照一变、地…

作者头像 李华
网站建设 2026/8/29 6:48:07

Windows用户必看:Miniconda-Python3.11配置PyTorch GPU环境避坑指南

Windows用户必看&#xff1a;Miniconda-Python3.11配置PyTorch GPU环境避坑指南 在深度学习项目中&#xff0c;最让人头疼的往往不是模型调参&#xff0c;而是环境搭建——明明代码没问题&#xff0c;却因为“ImportError: No module named torch”或“CUDA not available”卡…

作者头像 李华