给定二叉搜索树(BST)。迭代地找到二叉搜索树的最大深度。
我知道使用队列[级别顺序遍历]的方法,但时间复杂度是O(N),因为我们需要访问整个树。 但它不使用信息树是BST还是二叉树。
BST的算法是否保持相同,或者可以使用给定树是BST的事实来改进算法?
答案 0 :(得分:1)
我认为树不是BST的事实不会改变任何东西,你仍然必须在最坏的情况下访问所有节点,这使得它成为O(N)。我想在最好的情况下你只需要做O(log(N)),但这是最好的情况,你只需沿着树的深处去,不要访问任何其他节点。