在Python中检查给定块列表是否对x = y线对称
假设我们有一个名为nums的数字列表。它表示正方形块的高度,我们必须检查该形状是否对y = x线对称。
那么,如果输入为nums = [7, 5, 3, 2, 2, 1, 1],则输出将为True
为解决此问题,我们将遵循以下步骤:
- i := 0
- j := nums的大小 – 1
- while i <= j,do
- h := nums[j]
- while i < h,do
- 如果nums [i]与(j + 1)不同,则
- 返回False
- i := i + 1
- j := j – 1
- 返回True
让我们看一下以下实现以便更好地理解:
更多Python相关文章,请阅读:Python 教程
例子
class Solution:
def solve(self, nums):
i = 0
j = len(nums) - 1
while i <= j:
h = nums[j]
while i < h:
if nums[i] != j + 1:
return False
i += 1
j -= 1
return True
ob = Solution()
nums = [7, 5, 3, 2, 2, 1, 1]
print(ob.solve(nums))
输入
[7, 5, 3, 2, 2, 1, 1]
输出
True