public void DFS(T startNode, ExternalProcessor processingLogic) { this.ProcessingLogic = processingLogic; List <T> F = new List <T>(); DFS(startNode, F); }
static public void CreateBuildSetting() { ExternalProcessor instance = ScriptableObject.CreateInstance <ExternalProcessor>(); AssetDatabase.CreateAsset(instance, "Assets/Samples/ExternalProcessor/Scripts/Editor/ExternalProcessor.asset"); AssetDatabase.SaveAssets(); }
public void BFS(T startNode, ExternalProcessor processingLogic) { Queue <T> S = new Queue <T>(); List <T> F = new List <T>(); S.Enqueue(startNode); F.Add(startNode); T k; while (S.Count != 0) { k = S.Dequeue(); processingLogic(k.ToString()); foreach (T x in Neighbors(k)) { if (!F.Contains(x)) { TraversalLog.Add( new GraphDTO <T>() { From = k, To = x, } ); S.Enqueue(x); F.Add(x); } } } }