#include "paal/dynamic/knapsack/fill_knapsack_dynamic_table.hpp"
#include "paal/dynamic/knapsack/get_bound.hpp"
#include "paal/dynamic/knapsack/knapsack_common.hpp"
#include "paal/greedy/knapsack_unbounded_two_app.hpp"
#include "paal/utils/functors.hpp"
#include "paal/utils/knapsack_utils.hpp"
#include "paal/utils/less_pointees.hpp"
#include "paal/utils/type_functions.hpp"
#include "paal/utils/irange.hpp"
#include <boost/range/adaptor/reversed.hpp>
#include <boost/optional.hpp>
#include <vector>
Go to the source code of this file.
Classes | |
struct | paal::detail::knapsack_get_position_range |
For knapsack dynamic algorithm for given element the table has to be traversed from the lowest to highest element. More... | |
Namespaces | |
paal | |
global namespace of project. | |
paal::detail | |
Detail namespace. | |
Functions | |
template<typename KnapsackData , typename GetBestElement , typename ValuesComparator , typename ReturnType = typename KnapsackData::return_type> | |
ReturnType | paal::detail::knapsack_unbounded_dynamic (KnapsackData knap_data, GetBestElement getBest, ValuesComparator compareValues) |
template<typename KnapsackData , typename ReturnType = typename KnapsackData::return_type, typename Size = typename KnapsackData::size> | |
ReturnType | paal::detail::knapsack (KnapsackData knap_data, unbounded_tag, integral_value_tag, retrieve_solution_tag) |
Solution to the knapsack problem. More... | |
template<typename KnapsackData > | |
KnapsackData::return_type | paal::detail::knapsack (KnapsackData knap_data, unbounded_tag, integral_size_tag, retrieve_solution_tag) |
Solution to the knapsack problem. More... | |
template<typename Objects , typename OutputIterator , typename ObjectSizeFunctor , typename ObjectValueFunctor = utils::return_one_functor> | |
detail::knapsack_base< Objects, ObjectSizeFunctor, ObjectValueFunctor > ::return_type | paal::knapsack_unbounded (Objects &&objects, detail::FunctorOnRangePValue< ObjectSizeFunctor, Objects > capacity, OutputIterator out, ObjectSizeFunctor size, ObjectValueFunctor value=ObjectValueFunctor()) |
Solution to the knapsack problem. More... | |