Java 初学者进阶——bubble sort (冒泡排序)
对于java初学者,学习一些十分常见和重要的方法和基本原理是十分重要的。而bubble sort和binary search(二分查找)基本上各大公司笔试的内容,大都要求手写源码,考察你的逻辑能力。本文重点对 bubble sort 讲解,而binary search 将在写在下篇博客。如文中有错误或不足之处,迫望各位大佬不吝赐教。
bubble sort 中文名冒泡排序,是针对数组进行有序排序的一种方法,通常是对数组内的元素进行从小到大的排序,java中提供了sort方法,在实际编程中大都直接调用,具体调用方法将在后文进行展示。下面对bubble sort的原理进行讲解:
冒泡排序的原理:
冒泡排序,顾名思义,是像水中气泡一样的排序方式,下面我们定义一个整数数组
int[] arr={2,1,34,23,2,46}; 长度为6,索引到5。
当我们希望这个数组中的整数从小到大排列,就可以使用相互比较的方式。首先我们取arr[0],也就是2这个数,让它与第2至第6个比较大小,将大的数字放在右边,小的数子放在左边。当然,如果它比和它相比较的数字小,那么我们就停止比较。
第一步:
取第一个数 2 与依次与后面的数进行大小比较,如果大于被比较的数,则与之交换位置,如果小于等于,则停止比较,
(1)2与1比较,2>1,2和1换位,数组变为{1,2,34,23,2,46};
(2)2与34比较,2<3