Example #1
0
        private static TreeNode CreateMinimalBst(int[] arr, int start, int end)
        {
            if (end < start)
            {
                return(null);
            }
            int      mid = (start + end) / 2;
            TreeNode n   = new TreeNode(arr[mid]);

            n.SetLeftChild(CreateMinimalBst(arr, start, mid - 1));
            n.SetRightChild(CreateMinimalBst(arr, mid + 1, end));
            return(n);
        }
Example #2
0
        private static TreeNode CreateMinimalBst(int[] array, int start, int end)
        {
            if (end < start)
            {
                return(null);
            }

            var mid      = (start + end) / 2;
            var treeNode = new TreeNode(array[mid]);

            treeNode.SetLeftChild(CreateMinimalBst(array, start, mid - 1));
            treeNode.SetRightChild(CreateMinimalBst(array, mid + 1, end));

            return(treeNode);
        }
        private static TreeNode CreateMinimalBst(int[] array, int start, int end)
        {
            if (end < start)
            {
                return null;
            }

            var mid = (start + end) / 2;
            var treeNode = new TreeNode(array[mid]);
            treeNode.SetLeftChild(CreateMinimalBst(array, start, mid - 1));
            treeNode.SetRightChild(CreateMinimalBst(array, mid + 1, end));

            return treeNode;
        }
Example #4
0
	    private static TreeNode CreateMinimalBst(int[] arr, int start, int end)
        {
		    if (end < start) {
			    return null;
		    }
		    int mid = (start + end) / 2;
		    TreeNode n = new TreeNode(arr[mid]);
		    n.SetLeftChild(CreateMinimalBst(arr, start, mid - 1));
		    n.SetRightChild(CreateMinimalBst(arr, mid + 1, end));
		    return n;
	    }