本文共 829 字,大约阅读时间需要 2 分钟。
为了解决这个问题,我们需要判断是否可以在给定的花坛中种入指定数量的花朵,而不违反相邻地块不能种植花的规则。
我们可以通过遍历花坛数组来确定哪些位置可以种植花朵。具体步骤如下:
这种方法的时间复杂度为O(n),其中n是花坛的长度,能够高效处理较大的输入规模。
class Solution: def canPlaceFlowers(self, flowerbed, n): count = 0 for i in range(len(flowerbed)): if flowerbed[i] == 0: left_has_flower = i > 0 and flowerbed[i-1] == 1 right_has_flower = i < len(flowerbed) - 1 and flowerbed[i+1] == 1 if not left_has_flower and not right_has_flower: count += 1 return count >= n
这种方法通过一次遍历确定所有可以种植的位置,确保了高效性和正确性。
转载地址:http://jvkj.baihongyu.com/