int astar2(t_astar &var, int index) { if (var.opened_end.find(var.children[index]->getStringedState()) != var.opened_end.end() || var.closed_end.find(var.children[index]->getStringedState()) != var.closed_end.end()) { if (var.opened_end.find(var.children[index]->getStringedState()) != var.opened_end.end()) { var.e2 = var.opened_end[var.children[index]->getStringedState()]; } else { var.e2 = var.closed_end[var.children[index]->getStringedState()]; } var.success = true; var.e->printree(); var.e2->printree_end(); std::cout<<"complexity_time / "<<all.complexity_time<<std::endl; std::cout<<"complexity_size / "<<var.closed.size() + var.closed_end.size()<<std::endl; std::cout <<"nb_moves : " << all.nb_moves + 1<<std::endl; return 1; } if (var.closed.find(var.children[index]->getStringedState()) == var.closed.end() && var.opened.find(var.children[index]->getStringedState()) == var.opened.end()) { setChildValues(var.e, index, 1); var.pq.push((var.children[index])); var.opened.insert({var.children[index]->getStringedState(), (var.children[index])}); } else { delete var.children[index]; var.e->setChildren(NULL, index); } return 0; }
void astar3(t_astar &var, int index) { if (var.opened_end.find(var.children[index]->getStringedState()) == var.opened_end.end() && var.closed_end.find(var.children[index]->getStringedState()) == var.closed_end.end()) { setChildValues(var.e, index, 0); var.pq_end.push((var.children[index])); var.opened_end.insert({var.children[index]->getStringedState(), (var.children[index])}); } else delete var.children[index]; }
void Variable::handleLookup(const QVariantMap& data) { setChildValues(data["body"].toMap()["value"].toMap()["value"].toMap()); }