CPP09/ex02/inc/PmergeMe.hpp
2025-08-24 20:51:08 +02:00

30 lines
518 B
C++

#pragma once
#include <vector>
#include <deque>
template <typename Container>
class PmergeMe
{
public:
PmergeMe() = delete;
PmergeMe(const Container &container);
PmergeMe(const PmergeMe &other);
~PmergeMe();
PmergeMe &operator=(const PmergeMe &other);
void sort();
private:
std::vector<int> _data_vector;
std::deque<int> _data_deque;
std::vector<int> _jacobstahl_numbers;
int getJacobstahlNumber(int n);
int getJacobstahlNumberRecursive(int n);
};