文章目录
- 排序算法:
-
- 1.冒泡排序:在未排序的部分中逐一比较相邻元素,如果前者比后者大,则交换它们的位置,一轮比较后,最大的元素会“浮”到数组末尾。重复进行这个过程,直到所有元素都有序排列。时间复杂度为O(n^2)。
- 2.插入排序:将待排序的元素插入到已排序的序列中,初始时将第一个元素视为已排序,接着将第二个元素插入到正确的位置,以此类推。时间复杂度为O(n^2)。
- 3.选择排序:每次从未排序的部分中选出最小的元素,放到已排序的部分末尾。时间复杂度为O(n^2)。
- 3.快速排序:选择一个基准数,将数组分成两部分,比基准数小的数放在左边,比基准数大的数放在右边,再对左右两部分进行同样的操作。时间复杂度平均为O(nlogn),最坏为O(n^2)。
- 4.归并排序:将数组分成两部分,对每一部分进行递归排序,然后合并排序后的两部分。时间复杂度为O(nlogn)。
- C语言实现代码:
- 冒泡排序:
- 插入排序:<