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

有关做粪污处理设备的企业网站保定百度推广联系电话

有关做粪污处理设备的企业网站,保定百度推广联系电话,织梦网站做自适应,如何做ppt 制作过程视频教程题目:455. 分发饼干 贪心第一题 这里的局部最优就是大饼干喂给胃口大的,充分利用饼干尺寸喂饱一个,全局最优就是喂饱尽可能多的小孩。或者小饼干先喂饱小胃口 首先要对 g 和 s进行排序这样才能知道最大的胃口和最大的饼干然后进行遍历即可…

题目:455. 分发饼干

贪心第一题 

这里的局部最优就是大饼干喂给胃口大的,充分利用饼干尺寸喂饱一个,全局最优就是喂饱尽可能多的小孩。或者小饼干先喂饱小胃口

首先要对 g 和 s进行排序这样才能知道最大的胃口和最大的饼干然后进行遍历即可

两种方法代码如下:

class Solution {
public:int findContentChildren(vector<int>& g, vector<int>& s) {sort(g.begin(),g.end());sort(s.begin(),s.end());int index = 0;for(int i = 0; i < s.size(); i++) { // 饼干 先小的满足小的if(index < g.size() && g[index] <= s[i]){ // 胃口index++;}}return index;}
};class Solution {
public:int findContentChildren(vector<int>& g, vector<int>& s) {sort(g.begin(), g.end());sort(s.begin(), s.end());int index = s.size() - 1; // 饼干数组的下标  int result = 0;for (int i = g.size() - 1; i >= 0; i--) { // 遍历胃口if (index >= 0 && s[index] >= g[i]) { // 遍历饼干result++;index--;}}return result;}
};

题目:376. 摆动序列

这题确实自己想复杂了 自己在想如何删除元素 因为最后只要计数确实最简单的方法就是遇到峰值就++ 单调的就不++

但是这道题目写代码的话细节还是很多的 需要看视频考虑多种情况

这里的局部最优:删除单调坡度上的节点(不包括单调坡度两端的节点),这个坡度就可以有两个局部峰值

这是我们思考本题的一个大体思路,但本题要考虑三种情况:

  1. 情况一:上下坡中有平坡
  2. 情况二:数组首尾两端
  3. 情况三:单调坡中有平坡

完整代码如下:

class Solution {
public:int wiggleMaxLength(vector<int>& nums) {if (nums.size() <= 1) return nums.size();int curDiff = 0; // 当前一对差值int preDiff = 0; // 前一对差值int result = 1;  // 记录峰值个数,序列默认序列最右边有一个峰值for (int i = 0; i < nums.size() - 1; i++) {curDiff = nums[i + 1] - nums[i];// 出现峰值if ((preDiff <= 0 && curDiff > 0) || (preDiff >= 0 && curDiff < 0)) {result++;preDiff = curDiff; // 注意这里,只在摆动变化的时候更新prediff}}return result;}
};

题目:53. 最大子数组和

暴力解法的思路,第一层 for 就是设置起始位置,第二层 for 循环遍历数组寻找最大值

class Solution {
public:int maxSubArray(vector<int>& nums) {int result = INT32_MIN;int count = 0;for (int i = 0; i < nums.size(); i++) { // 设置起始位置count = 0;for (int j = i; j < nums.size(); j++) { // 每次从起始位置i开始遍历寻找最大值count += nums[j];result = count > result ? count : result;}}return result;}
};

使用贪心的话 就是寻找局部极大值 

如果 -2 1 在一起,计算起点的时候,一定是从 1 开始计算,因为负数只会拉低总和,这就是贪心贪的地方!

局部最优:当前“连续和”为负数的时候立刻放弃,从下一个元素重新计算“连续和”,因为负数加上下一个元素 “连续和”只会越来越小。

全局最优:选取最大“连续和”

局部最优的情况下,并记录最大的“连续和”,可以推出全局最优

那有同学问了,区间终止位置不用调整么? 如何才能得到最大“连续和”呢?

区间的终止位置,其实就是如果 count 取到最大值了,及时记录下来了。

class Solution {
public:int maxSubArray(vector<int>& nums) {int result = INT32_MIN;int count = 0;for (int i = 0; i < nums.size(); i++) {count += nums[i];if (count > result) { // 取区间累计的最大值(相当于不断确定最大子序终止位置)result = count;}if (count <= 0) count = 0; // 相当于重置最大子序起始位置,因为遇到负数一定是拉低总和}return result;}
};

http://www.fp688.cn/news/153514.html

相关文章:

  • 网站编辑转做新媒体运营做网络推广怎么找客户
  • 装修平台接单骗局一个企业seo网站的优化流程
  • 义乌开锁做网站哪个好在线培训系统平台
  • wordpress 国家列表seo主要做哪些工作
  • 怎么主机安装wordpress河北网站seo
  • 阿里巴巴做轮播网站网站建设网站推广
  • 直销公司排名2020官网广州百度seo 网站推广
  • 网站优化排名方案宁波pc营销型网站制作
  • 别人怎么看见我做的网站百度营销登录平台
  • 网站建设 网站运营推广方案策略怎么写
  • 免费注册网站平台seo外包公司专家
  • 使wordpress没有手机页面长沙百度快速优化
  • 随州网站建设推荐hao123网址大全浏览器设为主页
  • 高端人才招聘网站找代写文章写手
  • 手机网站排名怎么做优秀营销案例分享
  • 网站的按钮怎么做seo准
  • 怎样做原创短视频网站企业网站注册
  • 昆山哪里有人做网站天津百度快速优化排名
  • 武汉做网站公司优秀软文范例
  • 旅游网站图片杭州网站优化培训
  • 网站上的搜索怎么做滨州网站建设
  • 手游网站怎么做北大青鸟软件开发培训学费多少
  • 哪个网站做简历免费下载武汉网站推广公司排名
  • 南通网站公司云浮seo
  • 做网站要租服务器吗小红书关键词排名
  • 镇海区住房建设网站怎么查兔子bt搜索
  • b2c电子商务网站建设价格多少钱在哪里查关键词排名
  • 张家港做网站排名seo整站优化
  • wordpress内容分页徐州seo
  • 常用的网络营销方式seo教程 seo之家