Cream.DefaultSolver.MinimumSizeVariable C# (CSharp) Method

MinimumSizeVariable() protected method

MinimumSizeVariable method
protected MinimumSizeVariable ( ) : Variable
return Variable
        protected internal virtual Variable MinimumSizeVariable()
        {
            Variable min = null;
            IOrderedEnumerable<Variable> minimumSizeVariable =
                network.Variables.Cast<Variable>().Where(vars => vars.Domain.Size() > 1)
                    .OrderBy(vars => vars.Domain.Size());
            if (minimumSizeVariable.Count() > 0)
            {
                min = minimumSizeVariable.First();
            }

            // int minSize = Int32.MaxValue;
            // foreach (Variable v in network.Variables)
            // {
            // int Size = v.Domain.Size();
            // if (1 < Size && Size <= minSize)
            // {
            // vMin = v;
            // minSize = Size;
            // }
            // }
            return min;
        }