当前位置: 首页 > news >正文

公司网站建设汇报wordpress导航栏调用

公司网站建设汇报,wordpress导航栏调用,怎样制作公众号,广州做淘宝的化妆品网站好Q1. 是否能用贪心算法?为什么? 先预设一个策略,每当当前的nums[i]满足可以 "成块",就直接让这个数成块,也就是说之后的遍历过程中不会将这个数在考虑到自己的块内, "成块" 是指只要只…


Q1. 是否能用贪心算法?为什么?

       先预设一个策略,每当当前的nums[i]满足可以  "成块",就直接让这个数成块,也就是说之后的遍历过程中不会将这个数在考虑到自己的块内,

        "成块" 是指只要只需要将nums[i]放到前面的某个子数组的尾部,然后将这个子数组进行排序,就能得到一个拥有连续自然数的子数组,就称为成块

       能够使用谈心算法是因为有如下规律

       规律1. 以nums[i]为结尾的成块的子数组,其中的最大值不能小于 i

                 反证法:假设nums[i]为结尾的成块的子数组,其中最大值小于 i

                那么对这个子数组进行排序后,最后一个值即为maxval,且其下标标定位i

                子数组最开始的那个下标设为j, 那么子数组中应该有 i - j + 1个元素

                又根据成块的定义,这里将会缺少自然数填满i - j + 1个位置矛盾

                故,想要成块,子数组的最大值不能小于 i 

下面以图示的方法进一步说明,假设红线前的0 1 2已经成块了

如果 nums[7] < 7 那么一定不能成块,因为此时只能有 6 5 4 3 2 1 0 能放入这8个黑框中,

        规律2. 以nums[i]为结尾的成块的子数组,其中的最大值不能大于 i

                证明与上面类似,矛盾之处在于如果最大值大于 i ,则将会多出来一个元素

所以要想成块只能是maxval == i

class Solution {
public:int maxChunksToSorted(vector<int>& arr) {int n = arr.size();int ret = 0;int curmax = 0;for(int i = 0; i < n; ++i){curmax = max(curmax, arr[i]);if(curmax == i){ret++;}}return ret;}
};

http://www.yayakq.cn/news/186440/

相关文章:

  • 在线手机动画网站模板下载安装域名备案和网站备案有什么区别
  • 深圳网站建设服务便宜怎样做汽车网站建设
  • 手机app网站建设贵州讯玛网站建设
  • php网站开发实战视频教程wordpress安装语言
  • 手机在线网站建设网站阿里云服务器
  • lisp 网站开发vs 2012网站开发
  • 自己网站做seo淘宝官网首页登录入口电脑
  • 苏州网站建设的公司哪家好潍坊企业做网站
  • 中铁建设集团门户网站登录网页设计图片排版模板
  • 企业建设网站能否报销学做美食视频网站有哪些
  • 企业网站改自适应做logo用什么网站
  • 龙华app网站开发济南网站建设首推企优互联不错
  • 秦皇岛建网站做网站什么行业前景好
  • 楚州网站开发wordpress 去除rrs
  • 网站内的搜索是怎么做的高粱seo博客
  • 做淘宝网站用什么软件有哪些内容青岛做网站皆赴青岛博
  • 网站的建设与维护需要资质吗装修公司加盟免费
  • 茂名专业网站制作公司线下推广都有什么方式
  • 会计培训网站湖南网站建设平台
  • 专业网站建设商家室内在线设计网站
  • 晋城龙采网站建设机加工接单什么平台好
  • 济南传承网站建设公司如何做拼多多商城官网站
  • 免费做公众号的网站自己做网站怎么盈利
  • 中山市 有限公司网站建设网站建设技术路线
  • 免费网站安全软件大全游戏大型网站开发软件
  • 北京高端网站建设有限公司做网站需要多少钱 做
  • 有关网站建设合同网站的软文 怎么做推广方案
  • 许昌网站建设哪家最好天津营销网站建设公司
  • 个人网站建站白银市城市建设设计院网站
  • 做网站如何获利网站支付开发