——- android培训、java培训、期待与您交流! ———-
一、排序
排序:将杂乱无章的数据元素,通过一定的方法按关键字顺序排列的过程叫做排序。
排序也是计算机内经常进行的一种操作,其目的是将一组“无序”的记录序列调整为“有序”的记录序列。
1.常见的排序算法
常见的排序算法有:快速排序、希尔排序、堆排序、直接选择排序不是稳定的排序算法,而基数排序、冒泡排序、直接插入排序、折半插入排序、归并排序是稳定的排序算法。
其中,直接插入排序和希尔排序属于插入排序;直接选择排序和堆排序属于选择排序;冒泡排序和快速排序属于交换排序。这些都属于内排序。
什么是稳定排序呢?
假设在待排序的文件中,存在两个或两个以上的记录具有相同的关键字,在用某种排序法排序后,若这些相同关键字的元素的相对次序仍然不变,则这种排序方法是稳定的。
1)冒泡排序
相邻的两个元素进行比较,如果符合条件换位。
特点:第一圈,最值出现在最后位。
优点:稳定。
缺点:慢,效率低,每次只能移动相邻两个数据。
示例:
[java] view plaincopy在CODE上查看代码片派生到我的代码片
//冒泡排序
public static void bubbleSort(int[] arr)
{
for(int x=0;x