冒泡排序算法(Java中的冒泡排序是如何实现的)

知识大全 2022-07-31 17:42www.worldometers.cn知识大全

我们先来看看冒泡排序的算法是如何定义的:

冒泡算法

冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。
它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果他们的顺序(如从大到小、首字母从A到Z)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。
这个算法的名字由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。

Java编码实现

了解了冒泡排序的基本定义之后,根据其思想我们来根据题主的要求看看如何用Java实现冒泡排序算法,代码如下图:

基本原理就是如下的逻辑走向:

执行后输出如下:

有没有发现什么问题?是不是到了第6次已经完成排序了?后面的是不是就属于浪费了?所以我们需要优化一下,当他的顺序已经排序完毕了就不再进行排序了,优化后的代码如下:

执行后输出:

可以看出来只执行了6次排序。

算法复杂度

那么冒泡算法的复杂度是怎样的呢?相信大家看到这已经基本上可以算出来了:

  • 时间复杂度:两层循环O(n²);

  • 空间复杂度:还是原来的数组,没有开辟新的内存空间,所以是O(n)。

以上就是冒泡算法Java版的实现方案,大家有什么看法呢?欢迎评论区交流讨论,共同学习~

我是【java架构设计】,关注我,持续为您提供Java领域优质内容!

Copyright © 2016-2025 www.worldometers.cn 全球网 版权所有 Power by

全球化,全球疫情,全球股市,全球新闻网,全球地图,全球通史,经济全球化,全球变暖,全球进化,