1实验:内部排序算法比较一、问题描述程序对以下 4 种内部排序(冒泡排序、直接插入排序、简单选择排序、快速排序)算法进行实测比较,测试各种算法在对同样的数据排序时的比较次数和移动次数
二、输入与输出输入:根据用户需要输入待排表的表长(100 至 1000)和不同测试数据的组数(8 至 18),不输入则按照默认值进行测试输出:每次测试完毕,列表显示各种比较指标值:比较次数和移动次数二、需求分析1
本演示程序对以下 4 种常见的内部排序算法进行实测比较:冒泡排序、直接插入排序、简单选择排序、快速排序2
待排序表的元素的关键字为整数
用正序、逆序和不同乱序程度的不同数据做测试比较
比较的指标为由关键字参加的比较次数和关键字的移动次数(关键字交换计为 3 次移动)3
演示程序以用户和计算机的对话方式执行,即在计算机终端上菜单,根据用户需要输入待排表的表长(100 至 1000)和不同测试数据的组数(8 至 18),不输入则按照默认值进行测试
四、开发工具与环境硬件设备:微型计算机系统软件环境:操作系统 Windows,开发工具 Devc++五、功能分析存储结构 typedefintTypekey;typedefstruct{Typekeykey;}Type;typedefstruct{Typer[MAXSIZE+1];//顺序表intlength;}PList;//排序表函数一览表3函数一览表3usingnamespacestd;typedefintTypekey;intcompCount;//关键字的比较次数intshiftCount;//关键字的移动次数typedefstruct{Typekeykey;}Type;typedefstruct{Typer[MAXSIZE+1];//顺序表intlength;}PList;//排序表4intOneTimeSqCreate(PL