首页 分享 贪心算法解种植花朵问题

贪心算法解种植花朵问题

来源:花匠小妙招 时间:2025-09-11 18:16

贪心算法解种植花朵问题

贪心算法解种植花朵问题

最新推荐文章于 2024-08-20 10:56:43 发布

临月十四 于 2019-08-06 15:05:58 发布

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

贪心算法解种植花朵问题

题目:Input: flowerbed = [1,0,0,0,1], n = 1 Output: True

题目解释:1代表已经有花种下,0表示还没有花种下,两朵花之间至少需要1个间隔,求解能否种花。
解题思路:两朵花之间至少有一个间隔,则当前位置的前一个位置和后一个位置都为0
即pre=i==0?0:flowerbed[i-1];
next = i == flowerbed.length-1?0:flowerbed[i+1];

全部代码如下:

package test; public class Flowers {public static void main(String[] args) {int flowerbed[] = {1,0,0,0,1};System.out.println(canPlaceFlowers(flowerbed, 1));}public static boolean canPlaceFlowers(int[] flowerbed, int n) { int cnt = 0; for(int i=0;i<flowerbed.length;i++){ if(flowerbed[i]==1){ continue; } int pre = i == 0 ? 0: flowerbed[i-1]; int next = i == flowerbed.length-1 ? 0: flowerbed[i+1]; if(pre == 0 && next == 0){ cnt++; flowerbed[i] = 1; } } System.out.println("还能种"+cnt+"朵花 "); return cnt>=n;} }

相关知识

贪心算法解决木板切割问题
605. 种花问题003(贪心算法+思路+详解)
力扣605.种花问题
【贪心】605. 种花问题
木板切割问题——贪心
【物流配送中的最短路径算法】:优化配送,降低成本
改进的花朵授粉算法程序(Matlab)资源
花朵授粉算法【记录】
遗传算法+改良圈算法
改进的花朵授粉算法:融合差分进化策略

网址: 贪心算法解种植花朵问题 https://www.huajiangbk.com/newsview2321583.html

所属分类:花卉
上一篇: 林下种植模式创新研究
下一篇: 旋复花生态种植技术研究

推荐分享