|
- #ifndef SEARCHHEURISTIC_H
- #define SEARCHHEURISTIC_H
-
- #include "MasterMind.h"
-
- struct Candidate {
- Candidate(int* s, int v) {
- sol = s;
- value = v;
- }
-
- int* sol;
- int value;
- };
-
- struct {
- bool operator()(Candidate* a, Candidate* b) const {
- return a->value > b->value;
- }
- } cmp_candidates;
-
- struct Result {
- Result(int* s, int v, int c) {
- solution = s;
- v_solution = v;
- nb_calls = c;
- }
-
- int* solution;
- int v_solution;
- int nb_calls;
- };
-
- class SearchHeuristic
- {
- public:
- SearchHeuristic();
- virtual Result run() = 0;
- void set_problem(MasterMind* problem);
- virtual ~SearchHeuristic();
-
- protected:
- MasterMind* m_problem;
-
- private:
- };
-
- #endif // SEARCHHEURISTIC_H
|