三、实验结果记录和分析(测试向量上的测试结果、运行时间)
固定pivot选择算法和随机pivot选择算法结果均和数据生成时给出的label.txt对比结果全部正确。
-
固定pivot选择的算法
-
各组数据运行时间统计如下
-
2. 对同一规模数据运行时间取均值结果如下
3. 对同一规模数据运行时间计算方差结果如下
-
随机选择pivot算法
-
各组数据运行时间统计如下
-
2. 统一规模数据运行时间均值如下
3. 同一规模数据计算方差结果如下
上述数据显示了随机pivot选择算法的运行时间均值和方差均低于固定pivot选择算法。
四、总结(可描述出现的问题和解决方法、经验和反思等)
本次实验实现了随机选择算法和固定pivot选择算法并分析对比了两者的性能。相对于固定pivot选择算法,随机选择算法每次partition随机选择一个元素作为基准,平均而言划分结果时较对称的。对任意顺序的输入序列,随机快排都能够以较大概率保证划分均匀,运行时间不会有较大波动。