自己的思路:直接遍历一遍,如果当前位置可以种花则种,最后跟0比较决定返回true/false。

学习别人的代码风格&&思路(直接跳格子,这样也不会对原来的数组进行修改)
(1)当遇到1时,说明这个位置有花,那必然从index+2的位置才有可能种花,因此当碰到1时直接跳过下一格。
(2)当遇到0时,由于1都是跳两格,所以前面必然是0,此时看一下后面是0吗,是?此时能种花,然后把当前格看成1继续跳两格。不是?跳三格。

class Solution {public:bool canPlaceFlowers(vector<int>& flowerbed, int m) {int n = flowerbed.size();int i = 0;while (i < n && m) { //m写在这里好一点,如果m一开始就是0的话就不会进入循环if (flowerbed[i] == 1) i += 2;else {if (i + 1 == n || flowerbed[i + 1] == 0) { //这样不用分情况得到后一位,因为||必须前面满足才会得到后一项m--;i += 2;}else {i += 3;}}}return m == 0; //直接跟0比较返回,不用写条件表达式}
};

leetcode605.种花问题(简单)相关推荐

  1. Leetcode605. 种花问题(C语言)

    Leetcode605. 种花问题(C语言) 算法-贪心思想:算法与数据结构参考 题目: 假设你有一个很长的花坛,一部分地块种植了花,另一部分却没有.可是,花卉不能种植在相邻的地块上,它们会争夺水源, ...

  2. 跳格子/贪心算法例题详解:LeetCode605.种花问题

    今天做了一道很有意思的题目,虽然是分属于贪心算法的一个题目,但是解法多样,十分有趣,且不是很难理解,所以想在这里分享给大家. 题目描述: 假设有一个很长的花坛,一部分地块种植了花,另一部分却没有.可是 ...

  3. leetcode-605. 种花问题

    贪心算法 种花问题 题目详情 假设有一个很长的花坛,一部分地块种植了花,另一部分却没有.可是,花不能种植在相邻的地块上,它们会争夺水源,两者都会死去. 给你一个整数数组 flowerbed 表示花坛, ...

  4. 左耳听风 第四十九周

    左耳听风 第四十九周 每周完成一个ARTS: 每周至少做一个 leetcode 的算法题.阅读并点评至少一篇英文技术文章.学习至少一个技术技巧.分享一篇有观点和思考的技术文章.(也就是 Algorit ...

  5. 如何学好C语言--你的学渣朋友告诉你

    光说不练假把式,光练不说傻把式,又练又说真把式. 真实感受,不是我不想学,是我真的不知道我哪里不会啊和得怎么做啊?本文作者当初就是这么废掉的 推荐两个练习的网站 (一)C语言网 https://www ...

  6. 剑指offer第2版Python题解(更新中)

    O(n^2)排序 冒泡排序.插入排序与选择排序(Python)_NLP_victor的博客-CSDN博客 归并 归并排序(Python)_NLP_victor的博客-CSDN博客 快排 快速排序(Py ...

  7. 个人LeetCode刷题记录(带题目链接及解答)持续更新

    Leetcode 刷题 注:~[完成]代表还有一些方法没看,最后再看 一.一些需要重刷的典型题: 1.快速排序,归并排序,堆排序(递归的思想) 2.链表中的回文链表,其中的快慢指针,多看,多练 3.链 ...

  8. 源 arm_arm和X86处理器性能简单测试

    写在最前面 说了这个测试主要是想说arm和X86的IPC(同频性能),评论一群文章都没好好看的人说这不能比那不能比的半吊子真的要把我搞气了.还有说Gamss慢的人,至少全中国也找不出几个能写出来这种软 ...

  9. LeetCode_数组_简单题

    目录 26.删除排序数组中的重复项 27.移除元素 53.最大子序和 66.加一 88.合并两个有序数组 118.杨辉三角形 119.杨辉三角形II 717.1比特与2比特字符 989.数组形式的整数 ...

最新文章

  1. java 8代码 改 java7_Window安装JDK7和JDK8,并一键切换
  2. 音频在计算机中的存储
  3. python 有效的字母异位词
  4. Android踩坑日记:使用Fesco图片加载库在GridView上的卡顿优化
  5. TensorFlow安装-windows系统
  6. 60多套html5移动端模板_美容整形高保真移动端原型模板发布
  7. Angularjs1.x 中的 service,factory,provider,constant,value
  8. Form验证之简单应用
  9. ORACLE 数据同步时,批量进行新增和更新操作的SQL写法
  10. MPICH2在WINDOWS下的安装配置
  11. python生成器的作用是什么_看完这篇,你就知道Python生成器是什么
  12. 纯Vue实现网页日常任务清单小功能(数据存储在浏览器)
  13. IB和A-Level哪个的含金量高?
  14. 《诗经·邶风·击鼓》
  15. 华为云OBS创建对象时以HTTP方式通知订阅终端
  16. 从线上卖到线下,秘籍在这里|千牛头条双11直播
  17. 春风十里,不如见到你
  18. EPICS-从零开始的电机控制
  19. Android 百度地图marker中图片不显示的解决方案
  20. Android 开发者,你真的会用textview(maxEms和maxLength)的属性吗?

热门文章

  1. 微带线和带状线的区别
  2. 如何搭建FAQ文档?只需四步
  3. gp338信令_GP/GM338 1200信令设置攻略
  4. NodeJS开发博客(二) 接入数据库
  5. actix_web官方文档翻译
  6. 粗糙集 遗传matlab,一种基于遗传算法和粗糙集的属性约简方法及精神状态评估方法...
  7. 最珍贵的装备“血色十字军套装”
  8. 11个教程中不常被提及的JavaScript小技巧
  9. 智力测试:如何超越动物之智?
  10. 深入理解观察者模式与发布订阅模式