Пример #1
0
        private List <RubickMatrix> GenerateNeighbors(RubickMatrix _node)
        {
            List <RubickMatrix> neighbors = new List <RubickMatrix>();

            var moves = System.Enum.GetValues(typeof(RubickMovementTypes));

            for (int i = 0; i < moves.Length; i++)
            {
                RubickMovementTypes val = (RubickMovementTypes)moves.GetValue(i);
                if (val != RubickMovementTypes.None)
                {
                    RubickMatrix clone = (RubickMatrix)_node.Clone();
                    clone.Transform(val);
                    neighbors.Add(clone);
                }
            }

            return(neighbors);
        }