Example #1
0
        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();
    }
Example #3
0
        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);
                    }
                }
            }
        }