36 lines
851 B
C++
Raw Normal View History

2025-07-28 22:25:26 +02:00
#include "sorter.hpp"
#include <algorithm>
#include <iterator>
namespace ae {
void sorter::sort(container& data) {
// TODO Implement your sorting algorithm
for (auto i = 1uz; i < data.placeholder_.size(); ++i) {
std::ranges::copy(data.placeholder_[i], std::back_inserter(data.placeholder_[0]));
data.placeholder_[i].clear();
}
std::ranges::sort(data.placeholder_[0]);
}
void sorter::msd_inplace_radix_sort(std::span<container::element_type> range, size_t passes, size_t digit) {
if (digit == passes) {
return;
}
auto lower = std::begin(range);
auto upper = std::end(range);
for (auto element = lower; element < std::end(range);) {
// Mask out the <digit>-last bit and check if it is set
if ((*element & (1uz << sizeof(container::element_type) * 8 - digit))) {
} else {
}
}
}
} // namespace ae