diff options
| -rw-r--r-- | impls/qsort.cpp | 31 |
1 files changed, 23 insertions, 8 deletions
diff --git a/impls/qsort.cpp b/impls/qsort.cpp index 19272c5..9f6b1c7 100644 --- a/impls/qsort.cpp +++ b/impls/qsort.cpp @@ -6,6 +6,9 @@ */ #include <cstdio> #include <cstdlib> +#include <fstream> +#include <iostream> +#include <vector> #define ARR_SIZE(XS) (sizeof(XS) / sizeof((XS)[0])) #define SWAP(A, B) \ @@ -50,25 +53,37 @@ void quicksort(int *arr, int arr_size) } } -int main(void) +int main(int argc, char *argv[]) { - // randomly generate some numbers + (void)argc; + (void)argv; - int *arr = new int[TEST_SIZE]; +#define TEST_SIZE 10 + // randomly generate some numbers + int *arr = new int[TEST_SIZE]; + int arr_size = TEST_SIZE; for (size_t i = 0; i < TEST_SIZE; ++i) - { arr[i] = rand() % (2L << 30); - } + + // Use nums.txt + // std::ifstream input(argc > 1 ? argv[1] : "nums.txt"); + // std::vector<int> num_vec; + + // for (std::string line; std::getline(input, line); + // num_vec.push_back(std::stoi(line))) + // continue; + // int *arr = &num_vec[0]; + // int arr_size = num_vec.size(); printf("Before: "); - print_arr(arr, TEST_SIZE); + print_arr(arr, arr_size); printf("\n"); - quicksort(arr, TEST_SIZE); + quicksort(arr, arr_size); printf("After: "); - print_arr(arr, TEST_SIZE); + print_arr(arr, arr_size); printf("\n"); delete[] arr; |
