在Python中检查全局倒置和局部倒置的数量是否相同的程序

在Python中检查全局倒置和局部倒置的数量是否相同的程序

假设我们有一个名为nums的不同数字列表。全局倒置是指存在指数i<j,使得nums [i]>nums [j]。当存在索引i和i + 1,使得nums [i]>nums [i + 1]时,局部倒置发生。我们必须检查全局倒置的数量是否等于局部倒置的数量。

因此,如果输入是nums = [3, 2, 4],则输出为True,因为索引0和1都是全局和局部倒置。

为了解决这个问题,我们将遵循以下步骤 –

  • l:= nums的大小
  • 对于i在0到l-3范围内,执行以下操作 –
    • 对于j在i + 2到l-1范围内,执行以下操作 –
      • 如果nums [i]>nums [j],则 –
      • 返回False
  • 返回True

让我们看下面的实现以更好地理解 –

更多Python相关文章,请阅读:Python 教程

示例

class Solution:
   def solve(self, nums):
      l = len(nums)
      for i in range(l - 2):
         for j in range(i + 2, l):
            if nums[i] > nums[j]:
               return False
      return True
ob = Solution()
nums = [3, 2, 4]
print(ob.solve(nums))

输入

[3, 2, 4]

输出

True

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程