Implement strategy pattern

This commit is contained in:
Stone_Red
2023-05-31 09:24:32 +02:00
parent 1b1b568bb0
commit 1775929ced
10 changed files with 80 additions and 43 deletions
-6
View File
@@ -1,6 +0,0 @@
namespace Maze.Nodes;
internal class BfsNode : BaseMazeNode<BfsNode>
{
public BfsNode? Parent { get; set; }
}
-4
View File
@@ -1,4 +0,0 @@
namespace Maze.Nodes;
internal class DfsNode : BaseMazeNode<DfsNode>
{
}
+3 -2
View File
@@ -1,11 +1,12 @@
namespace Maze.Nodes;
internal abstract class BaseMazeNode<T> where T : BaseMazeNode<T>
internal class MazeNode
{
public bool Visited { get; set; }
public bool Wall { get; set; }
public bool Start { get; set; }
public bool Goal { get; set; }
public bool Updated { get; set; } = true;
public List<T> Neighbors { get; set; } = new List<T>();
public MazeNode? Parent { get; set; }
public List<MazeNode> Neighbors { get; set; } = new List<MazeNode>();
}