引言
在接下来的一段时间里,我准备整理一下自己的博客。尽自己最大努力把几年前写过的文章都看一遍,把一些存在错误的文章修改一下、把没有必要修改的文章删掉以及把一些知识点不全的文章进行完善。之所以整理自己的博客有以下3点原因:
- 回顾以前的文章可以让我了解到自己身上知识点的空缺,看看现在的自己是否已经把空缺弥补上
- 我始终认为一个博客的好坏不是文章的多少而是文章的质量,所以随着自己技术的进步,我应该以现在的水平,尽最大努力去提高自己文章的质量
- 博客上的文章毕竟不是只有我一个人能看到,所以我有责任来尽快修正先前文章的错误,以免误导其他人
我一年前写的文章排序算法汇总 少了一个Bubble Sort,因此在这篇文章中我想把Bubble Sort这个排序算法加入进来。
Bubble Sort 简介
Bubble Sort是所有排序算法中最简单的一个。它是一种基于比较排序的算法,这个算法主要的排序思想就是比较每一对相邻的元素,如果它们的顺序不对,就交换它们,最终直至所有的元素达到有序的状态。 下图是我从wikipedia上找到的动态图,它演示了Bubble Sort的排序过程,大家参考一下。
尽管这个算法非常简单,但是在实际应用中很少使用,这是因为它在数据量很大的情况下是非常慢的。如果整个要排序的元素列表是接近有序的,那么Bubble Sort的速度还是挺快的,在这样的情况下,它的时间复杂度是 O(