随机生成测试用例(以当前时间为随机种子)
在学习排序算法的过程中,特别是对比不同排序算法之间以及同一排序算法的优化之间的效率时,需要用到大量的测试用例,采取硬编码的方式难以满足测试需要,故采用随机生成测试用例的方式。
【思想】:将当前时间设置为随机种子,在给定的随机数范围[rangeL, rangeR]内生成随机数,此处选择用rand()对整个随机范围取余,再加上偏移量的方式。
【代码】:
SortTestHelper.h:
#pragmaonce
#ifndef SELECTIONSORT_SORTTESTHELPER_H
#defineSELECTIONSORT_SORTTESTHELPER_H
#include<iostream>
#include<ctime>
#include<cassert>
usingnamespace std;
//把测试相关的函数放到新的命名空间里
namespace SortTestHelper {
//返回一个随机生成的数组(测试暂定义为int*类型)
//生成有n个元素的随机数组,每个元素的范围为[rangeL, rangeR]
int*generateRandomArray(intn, intrangeL, intrangeR){