Python程序检查列表是否交替递增递减
假设我们有一个名为nums的数字列表。我们必须检查列表是否从严格递增开始,然后严格递减,然后严格递增,依此类推。如果列表只是严格递增的,则它也是有效的。
因此,如果输入类似于nums = [2, 4, 8, 7, 5, 1, 5, 7, 2, 1],则输出将为True,因为[2,4,8]递增,然后[7,5,1]递减,然后再次[5,7]递增,[2,1]递减。
为了解决这个问题,我们将遵循以下步骤:
- 如果nums[1] <= nums[0],则
- 返回False
- 对于范围从0到nums大小的i,执行以下操作:
- 如果i - 1 >= 0,则
- 如果nums[i]与nums[i - 1]相同,则
- 返回False
- 如果nums[i]与nums[i - 1]相同,则
- 如果i - 1 >= 0,则
- 返回True
示例
让我们看看下面的实现,以便更好地理解:
def solve(nums): if nums[1] <= nums[0]: return False for i in range(len(nums)): if i - 1 >= 0: if nums[i] == nums[i - 1]: return False return True nums = [2, 4, 8, 7, 5, 1, 5, 7, 2, 1] print(solve(nums))
输入
[2, 4, 8, 7, 5, 1, 5, 7, 2, 1]
输出
True
广告