实验三 排序姓名: 班级: 学号:1.实验要求1.1 实验目的通过选择下面题目,学习、实现、对比各种排序算法,掌握各种排序算法的优劣,以及各种算法使用的情况。1.2 实验内容使用简单数组实现下面各种排序算法,并进行比较。排序算法: 1、插入排序 2、希尔排序3、冒泡排序4、快速排序5、简单选择排序6、堆排序(选作)7、归并排序(选作)8、基数排序(选作)9、其他要求: 1、测试数据分成三类:正序、逆序、随机数据2、对于这三类数据,比较上述排序算法中关键字的比较次数和移动次数(其中关键字交换计为 3 次移动)。 3、对于这三类数据,比较上述排序算法中不同算法的执行时间,精确到微秒(选作)4、对 2 和 3 的结果进行分析,验证上述各种算法的时间复杂度编写测试 main()函数测试线性表的正确性。2 程序分析与关键代码2.1 存储结构存储结构:一维数组2.2 关键算法分析1.直接插入排序:数组分为有序区与无序区,初始时首个元素为有序。从第二个元素开始,每个元素一趟,顺序查找获得插入点。一趟实现,将待插入记录赋值给哨兵 r[0],从后向前进行顺序查找,元素后移。代码实现if(r[i]0&&r[0]r[i+1]) //相邻比...