Exemple #1
0
    /// <summary>
    /// Két naprendszer összekötő útat keres meg
    /// </summary>
    /// <param name="startSystem"></param>
    /// <param name="endSystem"></param>
    /// <returns>Az útvonal elemeinek a listájával tér vissza</returns>
    public List <SolarSystem> FindWay(SolarSystem startSystem, SolarSystem endSystem)
    {
        List <SolarSystem> path = new List <SolarSystem>();

        AbsztraktAllapot Szk      = new SolarSystemAllapot(startSystem, endSystem, game.Systems);
        GrafKereso       Gk       = new BackTrack(5);
        Csucs            celcsucs = Gk.Keres(new Csucs(Szk));

        if (celcsucs == null)
        {
            Debug.Log("Nemjó");
        }
        else
        {
            Csucs cs = celcsucs;
            path.Add(cs.allapot.getCurrentSolarSystem());
            while (cs != null)
            {
                cs = cs.Szulo;
                path.Add(cs.allapot.getCurrentSolarSystem());
            }
        }

        return(path);
    }
 static void Main(string[] args)
 {
     for (int i = 1; i < 6; i++)
     {
         BackTrack backTrack = new BackTrack();
         int[,] table = Common.getMatrix(Common.readDat("data/input_assign04_0" + i + ".txt"));
         Console.WriteLine("第" + i + "组数据结果为:");
         backTrack.setTable(table);
         backTrack.backTrack(0);
         backTrack.display();
         Console.WriteLine("\n");
     }
     Console.ReadKey();
 }
 public SimpleBackTrackCSP(Vector2Int[] operators, Vector2Int BoardSize, BaseGuessor Guessor, float MineDensity, int MaxSolvingLength) : base(operators, BoardSize, Guessor, MineDensity, MaxSolvingLength)
 {
     bruteforce = new BackTrack(Closed, HiddenClosedRelations, ClosedHiddenNeighbores);
 }