示例#1
0
        private static void BinarySearchOperations()
        {
            var binaryTree = BinaryTreeBuilder.BinaryTree(new int[] { 50, 40, 60, 30, 45, 55, 70, 20, 35 });

            BinaryTreeBuilder.PrintBinaryTree(binaryTree);
            BinarySearchTree binarySearchTree = new BinarySearchTree();
            var status = binarySearchTree.FindValue(binaryTree, 45) ? "Found" : "Not Found";

            Console.WriteLine($"Value [45] {status}");

            status = binarySearchTree.FindValue(binaryTree, 10) ? "Found" : "Not Found";
            Console.WriteLine($"Value [10] {status}");

            status = binarySearchTree.FindValue(binaryTree, 70) ? "Found" : "Not Found";
            Console.WriteLine($"Value [70] {status}");
        }
示例#2
0
            public override void PlayGameOnce()
            {
                // Speichert den Spielplan in ein anderes Array initData
                // Welche zu einem Binaerbaum umgewandelt wird
                // der Spielplan befindet sich quasi in den aeusserste Knoten
                // vgl. Dokumentation
                int[] initData = new int[_playPlan.Length * 2 - 1];
                for (int i = 0; i < initData.Length; i++)
                {
                    initData[i] = -1;
                }
                _playPlan.CopyTo(initData, _playPlan.Length - 1);
                Node <int> treeRoot = new BinaryTreeBuilder <int>(initData).Root;

                GetGameResult(treeRoot);
                _winTimesTotal[treeRoot.Data] += 1;
            }
示例#3
0
            public override void PlayGameOnce()
            {
                // Speichert den Spielplan in ein anderes Array initData
                // Welche zu einem Binaerbaum umgewandelt wird
                // der Spielplan befindet sich quasi in den aeusserste Knoten
                // alle andere Knoten haben einen Anfangswert von -1
                // vgl. Dokumentation
                int[] initData = new int[_playPlan.Length * 2 - 1];
                for (int i = 0; i < initData.Length; i++)
                {
                    initData[i] = -1;
                }
                _playPlan.CopyTo(initData, _playPlan.Length - 1);
                Node <int> treeRoot = new BinaryTreeBuilder <int>(initData).Root;

                // Der Sieger dieser Runde wird dann in der Wurzel(Root) gespeichert
                GetGameResult(treeRoot);
                // Erhoeht die Anzahl der Siege des gewonnenen Spielers um 1
                _winTimesTotal[treeRoot.Data] += 1;
            }