AIMA.Core.Search.CSP.ImprovedBacktrackingStrategy.selectUnassignedVariable C# (CSharp) Метод

selectUnassignedVariable() защищенный Метод

protected selectUnassignedVariable ( Assignment assignment, CSP csp ) : Variable
assignment Assignment
csp CSP
Результат Variable
        protected override Variable selectUnassignedVariable(Assignment assignment, CSP csp)
        {
            switch (selectionStrategy)
            {
                case MRV:
                    return applyMRVHeuristic(csp, assignment).get(0);
                case MRV_DEG:
                    List<Variable> vars = applyMRVHeuristic(csp, assignment);
                    return applyDegreeHeuristic(vars, assignment, csp).get(0);
                default:
                    foreach (Variable var in csp.getVariables())
                    {
                        if (!(assignment.hasAssignmentFor(var)))
                            return var;
                    }
            }
            return null;
        }