数据结构之生成数组并打印排序

 

 

使用c++语言生成一定范围的数组:

#ifndef INC_03_SELECTION_SORT_GENERATE_TEST_CASES_SORTTESTHELPER_H
#define INC_03_SELECTION_SORT_GENERATE_TEST_CASES_SORTTESTHELPER_H
#include <iostream>
#include <ctime>
#include <cassert>
using namespace std;
namespace SortTestHelper {
    // 生成有n个元素的随机数组,每个元素的随机范围为[rangeL, rangeR]
    int *generateRandomArray(int n, int rangeL, int rangeR) {
        assert(rangeL <= rangeR);
        int *arr = new int[n];
        srand(time(NULL));
        for (int i = 0; i < n; i++)
            arr[i] = rand() % (rangeR - rangeL + 1) + rangeL;
        return arr;
    }
    template<typename T>
    void printArray(T arr[], int n) {
        for (int i = 0; i < n; i++)
            cout << arr[i] << " ";
        cout << endl;
        return;
    }

};
#endif //INC_03_SELECTION_SORT_GENERATE_TEST_CASES_SORTTESTHELPER_H

测试代码:

int main() {
    // 测试排序算法
    int N = 10000;
    int *arr = SortTestHelper::generateRandomArray(N,0,100000);
    //在这里调用排序方法进行测试

    // 打印
    SortTestHelper::printArray(arr,N);
    delete[] arr;
    return 0;
}

 

原文地址:https://www.cnblogs.com/lzb0803/p/9043121.html