检查一个数组在 Python 中是否表示二叉查找树的中序


假设我们有一个数字数组,称为 nums。我们必须检查数组是否按其中序遍历的顺序保存了二叉查找树的元素。

因此,如果输入类似 nums = [5, 8, 15, 18, 20, 26, 39],则输出为 True,因为这是

为了解决此问题,我们将按照以下步骤操作 −

  • size := nums 的大小
  • 如果 size 为 0 或 1,则
    • 返回 True
  • 对于 range 1 至 size - 1 中的 i,执行
    • 如果 nums[i - 1] > nums[i],则
      • 返回 False
  • 返回 True

让我们看看以下实现以获得更好的理解 −

示例

 实时测试

def solve(nums):
   size = len(nums)
   if size == 0 or size == 1:
      return True
   for i in range(1, size):
      if nums[i - 1] > nums[i]:
         return False
   return True
nums = [5, 8, 15, 18, 20, 26, 39] 
print(solve(nums))

输入

[5, 8, 15, 18, 20, 26, 39]

输出

True

于以下时间更新: 30-12-2020

479 次浏览

启动你的 职业生涯

通过完成课程获得认证

开始学习
广告