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

ui设计介绍搜索引擎优化方法总结

ui设计介绍,搜索引擎优化方法总结,网站设置三方交易,响应式网站开发 三合一建站贪心算法其实就是没有什么规律可言,所以大家了解贪心算法 就了解它没有规律的本质就够了。 不用花心思去研究其规律, 没有思路就立刻看题解。 基本贪心的题目 有两个极端,要不就是特简单,要不就是死活想不出来。 学完贪心之后再…

贪心算法其实就是没有什么规律可言,所以大家了解贪心算法 就了解它没有规律的本质就够了。 

不用花心思去研究其规律, 没有思路就立刻看题解。

基本贪心的题目 有两个极端,要不就是特简单,要不就是死活想不出来。  

学完贪心之后再去看动态规划,就会了解贪心和动规的区别。

理论基础 

代码随想录

455.分发饼干  

代码随想录

两个数组先排序,倒着看最大的cookie能满足的孩子,向前计数。

Python:

class Solution:def findContentChildren(self, g: List[int], s: List[int]) -> int:g.sort()s.sort()i = len(g)-1j = len(s)-1result = 0while j>=0 and i>=0:if s[j]>=g[i]:result += 1j -= 1i -= 1return result

C++:

C++版本用i--实现也算简洁。

class Solution {
public:int findContentChildren(vector<int>& g, vector<int>& s) {sort(g.begin(), g.end());sort(s.begin(), s.end());int result=0;int i = g.size()-1;int j = s.size()-1;for (int i=g.size()-1; i>=0; i--) {if (j>=0 && s[j]>=g[i]) {result++;j--;}}return result;}
};

376. 摆动序列  

代码随想录

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

主要难点:要考虑平坡的情况。

Python:

class Solution:def wiggleMaxLength(self, nums: List[int]) -> int:n = len(nums)if n<=1: return nprev_diff = nums[1] - nums[0]n_diff = int(prev_diff!=0)for i in range(2, n):cur_diff = nums[i] - nums[i-1]if cur_diff * prev_diff < 0 or (prev_diff==0 and cur_diff!=0):n_diff += 1prev_diff = cur_diff return n_diff + 1

C++:

class Solution {
public:int wiggleMaxLength(vector<int>& nums) {if (nums.size()<=1) return nums.size();int preDiff = 0;int curDiff = 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;}}return result;}
};

53. 最大子序和  

代码随想录

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

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

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

从代码角度上来讲:遍历 nums,从头开始用 count 累积,如果 count 一旦加上 nums[i]变为负数,那么就应该从 nums[i+1]开始从 0 累积 count 了,因为已经变为负数的 count,只会拖累总和。

这相当于是暴力解法中的不断调整最大子序和区间的起始位置

Python贪心:

class Solution:def maxSubArray(self, nums: List[int]) -> int:result = float('-inf')count = 0for num in nums:count += numif count > result:result = countif count <= 0:count = 0return result

Python动态规划:

class Solution:def maxSubArray(self, nums: List[int]) -> int:curSum, maxSum = nums[0], nums[0]for num in nums[1:]:curSum = max(num, curSum + num)maxSum = max(maxSum, curSum)return maxSum

C++贪心:

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

C++动态规划:

class Solution {
public:int maxSubArray(vector<int>& nums) {int curSum = nums[0];int maxSum = nums[0];for (int i=1; i<nums.size(); i++) {curSum = max(nums[i], curSum+nums[i]);maxSum = max(maxSum, curSum);}return maxSum;}
};

http://www.hkea.cn/news/907925/

相关文章:

  • 泊头哪给做网站的好制作网页的教程
  • 漳州建设银行网站首页在百度上打广告找谁
  • 网站免费建站k网络营销策划方案书
  • 网站建设类公网店推广的作用
  • 安平做网站除了百度指数还有哪些指数
  • 做网站公司 蓝纤科技知乎怎么申请关键词推广
  • 临沂免费做网站发表文章的平台有哪些
  • 网站推广的方式包括哪些广西网站建设制作
  • 杭州营销网站建设东莞网站建设哪家公司好
  • 企业做营销型网站手机如何制作网页
  • 连云港网站关键词优化seo自学教程
  • 网站全站出售淘宝关键词排名怎么查询
  • 龙口市规划建设局网站查询收录
  • 学校网站建设注意什么东莞网站营销推广
  • 网站设计模板是什么百度网盘人工客服电话多少
  • wordpress文章收缩长春seo优化企业网络跃升
  • 网站地图调用希爱力双效片骗局
  • 珠海网站建设维护友情链接买卖代理
  • 武汉企业网站推广外包网络广告营销案例分析
  • 深圳哪里有做网站的汕头seo排名收费
  • 如何用腾讯云主机做网站株洲发布最新通告
  • 中国建设银行官网站下载信息流广告投放公司
  • 合肥建站平台网络平台推广是干什么
  • 黄冈工程建设标准造价信息网优化工作流程
  • 怎么做服装外贸网站怎么去推广一个产品
  • 和各大网站做视频的工作总结软件推广赚佣金渠道
  • asp.net是做网站的吗企业文化培训
  • 有链接的网站怎么做seochan是什么意思
  • 开发公司 工程管理中存在问题seo人工智能
  • 网站卖给别人后做违法信息seo和点击付费的区别