冒泡排序(Bubble Sort)
算法实现:
- 比较相邻元素,根据条件(大小)交换位置。
- 从第一个元素开始,依次重复步骤1。
- 重复根据元素数量,重复以上步骤,直到排序完成。
算法分析:
- 数据量为n,时间复杂度为n * (n-1) * 0.5,则为O(n²)。
简单选择排序(Simple Selection Sort)
算法实现:
- 在未排序的数据中,找到最小(最大)的跟第一个数据交换位置。
- 重复以上步骤,直到排序完成。
算法分析:
- 时间复杂度为O(n²)。
直接插入排序算法(Straight Insertion Sort)
算法实现:
- 取第一个的未排序的元素。
- 依次往前对比,插入适合的位置。
- 以第一元素为已经排序,开始重复步骤1,2直到排序完成
算法分析:
- 时间复杂度为O(n²)。
希尔排序算法(Shell Sort)
算法实现:
- 定义一个步调(gap),根据步调把数据分成组。
- 对每一组进行插入排序。
- 缩小步调,重复以上步骤,直到步调为1,完成排序。
算法分析:
- 时间复杂度为O(nlogn)。