Esempio n. 1
0
        /// <summary>
        /// Computes the number of routes between two nodes with a maximum distance.
        /// </summary>
        /// <param name="graph">Graph informations.</param>
        /// <param name="startNode">Initial node of a path.</param>
        /// <param name="endNode">End node of a path.</param>
        /// <param name="maxDistance">Maximum distance between nodes.</param>
        /// <returns>Number of routes with a maximum distance.</returns>
        public static int ComputeAllRoutesMaxDistance(GraphModel graph, char startNode, char endNode, int maxDistance)
        {
            AllRoutesAlgorithm algorithm = new AllRoutesAlgorithm(graph, startNode, endNode, maxDistance);

            return(algorithm.ComputeAllRoutesMaxDistance());
        }
Esempio n. 2
0
        /// <summary>
        /// Computes all routes between two nodes with a defined number of stops.
        /// </summary>
        /// <param name="graph">Graph informations.</param>
        /// <param name="startNode">Initial node of a path.</param>
        /// <param name="endNode">End node of a path.</param>
        /// <param name="numStops">Maximum number of stops in a path.</param>
        /// <returns>List of <code>GraphRouteAlgorithmReturn</code> object that contains the paths and the weights of all routes found.</returns>
        public static List <GraphRouteAlgorithmReturn> ComputeAllRoutesNumStops(GraphModel graph, char startNode, char endNode, int numStops)
        {
            AllRoutesAlgorithm algorithm = new AllRoutesAlgorithm(graph, startNode, endNode, numStops);

            return(algorithm.ComputeAllRoutesNumStops());
        }