| 367 | |
| 368 | protected: |
| 369 | void Run(CppBenchmark::Context& context) override |
| 370 | { |
| 371 | // Generate items to sort |
| 372 | std::generate(items.begin(), items.end(), rand); |
| 373 | |
| 374 | // Sort items |
| 375 | if (items.size() > 0) |
| 376 | QuickSort3Internal(items, 1, items.size()); |
| 377 | context.metrics().AddItems(items.size()); |
| 378 | } |
| 379 | |
| 380 | private: |
| 381 | static void QuickSort3Internal(std::vector<int>& subitems, size_t left, size_t right) |