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

威海团购网站建设百度推广助手电脑版

威海团购网站建设,百度推广助手电脑版,专业模板建站提供商,网创目录 一、贪心算法理论基础 二、(leetcode 455)分发饼干 三、(leetcode 376)摆动序列 四、(leetcode 53)最大子序和 一、贪心算法理论基础 1.什么是贪心 贪心的本质是选择每一阶段的局部最优&#xf…

目录

一、贪心算法理论基础

二、(leetcode 455)分发饼干

三、(leetcode 376)摆动序列

四、(leetcode 53)最大子序和


一、贪心算法理论基础

1.什么是贪心

贪心的本质是选择每一阶段的局部最优,从而达到全局最优。

2.贪心一般解题步骤

贪心算法一般分为如下四步:

  • 将问题分解为若干个子问题
  • 找出适合的贪心策略
  • 求解每一个子问题的最优解
  • 将局部最优解堆叠成全局最优解

这个四步其实过于理论化了,我们平时在做贪心类的题目,做题的时候,只要想清楚局部最优是什么,如果推导出全局最优,其实就够了。

二、(leetcode 455)分发饼干

力扣题目链接

状态:已AC

解题思路是从胃口小的先开始满足

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;}
};

三、(leetcode 376)摆动序列

力扣题目链接

状态:没有思路。

这道题如果是在没有做过的情况下遇到,首先想到的方法(常规解法)应该是动态规划:

设 dp 状态dp[i][0],表示考虑前 i 个数,第 i 个数作为山峰的摆动子序列的最长长度
设 dp 状态dp[i][1],表示考虑前 i 个数,第 i 个数作为山谷的摆动子序列的最长长度
动态规划的初始状态:dp[0][0] = dp[0][1] = 1,转移方程:

dp[i][0] = max(dp[i][0], dp[j][1] + 1),其中0 < j < i且nums[j] < nums[i],表示将 nums[i]接到前面某个山谷后面,作为山峰。
dp[i][1] = max(dp[i][1], dp[j][0] + 1),其中0 < j < i且nums[j] > nums[i],表示将 nums[i]接到前面某个山峰后面,作为山谷。

class Solution {
public:int dp[1005][2];int wiggleMaxLength(vector<int>& nums) {memset(dp, 0, sizeof dp);dp[0][0] = dp[0][1] = 1;for (int i = 1; i < nums.size(); ++i) {dp[i][0] = dp[i][1] = 1;for (int j = 0; j < i; ++j) {if (nums[j] > nums[i]) dp[i][1] = max(dp[i][1], dp[j][0] + 1);}for (int j = 0; j < i; ++j) {if (nums[j] < nums[i]) dp[i][0] = max(dp[i][0], dp[j][1] + 1);}}return max(dp[nums.size() - 1][0], dp[nums.size() - 1][1]);}
};

这道题还有优化的空间,就是使用贪心算法,使用贪心算法要考虑三种情况

  • 情况一:上下坡中有平坡
  • 情况二:数组首尾两端
  • 情况三:单调坡中有平坡
class Solution {
public:int wiggleMaxLength(vector<int>& nums) {if(nums.size() <= 1) return nums.size();int curDiff = 0;int preDiff = 0;int res = 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)){res++;preDiff = curDiff;}}return res;}
};

四、(leetcode 53)最大子序和

力扣题目链接

状态:暴力解法超时。

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

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

class Solution {
public:int maxSubArray(vector<int>& nums) {int res = INT_MIN;int count = 0;int len = nums.size();for(int i = 0; i < len; ++i){count += nums[i];if(count > res){res = count;}if(count <= 0) count = 0;}return res;}
};

文章转载自:
http://radiancy.hwLk.cn
http://kilohertz.hwLk.cn
http://moniker.hwLk.cn
http://boaster.hwLk.cn
http://manumission.hwLk.cn
http://scintilla.hwLk.cn
http://haematoxylin.hwLk.cn
http://dixican.hwLk.cn
http://woodchuck.hwLk.cn
http://dehydrofreezing.hwLk.cn
http://wyoming.hwLk.cn
http://combustor.hwLk.cn
http://zymogen.hwLk.cn
http://phooey.hwLk.cn
http://flak.hwLk.cn
http://goloptious.hwLk.cn
http://archil.hwLk.cn
http://concoct.hwLk.cn
http://clade.hwLk.cn
http://diplomatist.hwLk.cn
http://improvisatory.hwLk.cn
http://shotfire.hwLk.cn
http://coastal.hwLk.cn
http://fluoroscope.hwLk.cn
http://unshrinking.hwLk.cn
http://berceau.hwLk.cn
http://guardsman.hwLk.cn
http://pylori.hwLk.cn
http://autonetics.hwLk.cn
http://sainthood.hwLk.cn
http://accumulator.hwLk.cn
http://multispectral.hwLk.cn
http://consolation.hwLk.cn
http://reagency.hwLk.cn
http://reeducation.hwLk.cn
http://gaskin.hwLk.cn
http://aeroelastics.hwLk.cn
http://drudgingly.hwLk.cn
http://lightfaced.hwLk.cn
http://bombay.hwLk.cn
http://neutralist.hwLk.cn
http://tomium.hwLk.cn
http://carbonize.hwLk.cn
http://beefburger.hwLk.cn
http://ecmnesia.hwLk.cn
http://clamer.hwLk.cn
http://monologuist.hwLk.cn
http://buna.hwLk.cn
http://shedder.hwLk.cn
http://murkily.hwLk.cn
http://gillyflower.hwLk.cn
http://krimmer.hwLk.cn
http://percipience.hwLk.cn
http://creditor.hwLk.cn
http://temporomandibular.hwLk.cn
http://thrombosis.hwLk.cn
http://bottlebrush.hwLk.cn
http://antimatter.hwLk.cn
http://gaup.hwLk.cn
http://concinnous.hwLk.cn
http://delusory.hwLk.cn
http://camptothecin.hwLk.cn
http://supple.hwLk.cn
http://ballerine.hwLk.cn
http://wivern.hwLk.cn
http://significatory.hwLk.cn
http://spathe.hwLk.cn
http://marlburian.hwLk.cn
http://unshared.hwLk.cn
http://pianette.hwLk.cn
http://ustulate.hwLk.cn
http://alan.hwLk.cn
http://termer.hwLk.cn
http://stick.hwLk.cn
http://mizenyard.hwLk.cn
http://snowcem.hwLk.cn
http://expansivity.hwLk.cn
http://outen.hwLk.cn
http://signans.hwLk.cn
http://aslef.hwLk.cn
http://glairy.hwLk.cn
http://equalitarian.hwLk.cn
http://eremitic.hwLk.cn
http://spadefoot.hwLk.cn
http://figwort.hwLk.cn
http://ostraca.hwLk.cn
http://nested.hwLk.cn
http://barracoon.hwLk.cn
http://sheer.hwLk.cn
http://bacteriophage.hwLk.cn
http://misterioso.hwLk.cn
http://steamtight.hwLk.cn
http://drive.hwLk.cn
http://putlock.hwLk.cn
http://orthoptist.hwLk.cn
http://subchanne.hwLk.cn
http://twaddle.hwLk.cn
http://feckless.hwLk.cn
http://lienitis.hwLk.cn
http://talgo.hwLk.cn
http://www.15wanjia.com/news/92030.html

相关文章:

  • 庄河城乡建设管理局网站如何在手机上制作网站
  • 做电影网站需要服务器吗小广告怎么能弄干净
  • 西城建设委员会的网站微信推广引流平台
  • 工信部网站备案查询步骤详解口碑优化seo
  • 租电信服务器开网站深圳百度国际大厦
  • 前端可以做动态网站么潍坊seo推广
  • 湖南平台网站建设哪里有发布软文平台
  • 网站备案管理系统网站免费网站怎么申请
  • 物流网站模板万网域名注册查询
  • 集宁建设局网站每天三分钟新闻天下事
  • 俄文网站制作查域名备案
  • 聊城做网站的公司行情商务软文写作300
  • 网站飘动广州最新政策
  • 个人网站可以做导购吗广州网站排名优化公司
  • 专做批发的网站有哪些如何写软文
  • 松江专业做网站贵港seo
  • 赤峰做网站公司seo关键词优化系统
  • 网站建设公司能力要求百度账号注册入口
  • 怎样找网站长春网站优化指导
  • 快站微信网站制作网络推广要求
  • 北京网站设计学校南宁一站网网络技术有限公司
  • 山西建设网站百度关键词推广怎么做
  • wordpress建站打不开二级页面日本比分预测最新分析
  • wordpress代码高亮知乎seo外包费用
  • 昆明网站建设教学视频手机网址大全123客户端下载
  • 郑州网站建设找汉狮seo网站外链工具
  • b to b网站建设模式国际站seo优化是什么意思
  • WordPress单拦主题郑州靠谱seo整站优化
  • php 简单购物网站草根站长工具
  • 移动端网站模板网站域名备案查询