Advertisement

七大排序算法:冒泡 简单选择 直接插入 希尔 堆 归并 快速

阅读量:

排序的基本理论概念

排序的分类

根据排序过程中待排序的数据项是否能够完全存入内存,排序方式可划分为以下两类:

内排序

外排序

1.内排序

在内排序的整个操作流程中,所有待处理的数据项均存储于内存之中

影响内排序效率的关键要素包括:

时间性能。

(其主要受到比较操作数据移动操作的双重影响)

辅助存储空间的占用情况。

算法本身的复杂程度。

内排序的划分依据

依据排序过程中所依赖的核心操作类型,内排序可分为如下几种形式:

插入排序

交换排序

选择排序

归并排序

2.外排序

当待处理的数据量过大,无法一次性全部加载到内存中时,外排序便成为必要手段。在该过程中,需要在内存与外部存储设备之间反复进行数据交换以完成整个排序任务

按照算法复杂度进行分类:

基础算法:

冒泡排序、简单选择排序、直接插入排序。

高级算法:

希尔排序、堆排序、归并排序、快速排序。


一、冒泡排序算法

由于冒泡排序算法的实现需要依赖于顺序表结构以及数组中两个元素的交换操作,因此应首先将这些功能模块编写为独立的函数。

复制代码
  
    
 #include <stdio.h>
    
 #include <stdlib.h>

全部评论 (0)

还没有任何评论哟~