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

湖南省住房和城乡建设厅网站建设银行行号网站查询是什么

湖南省住房和城乡建设厅网站,建设银行行号网站查询是什么,万户网络科技有限公司,网站建设收费标准精英文章目录 理论基础分发饼干思路:代码: 摆动序列思路一 贪心算法:代码: 思路二:动态规划(想不清楚)代码: 最大子序和思路:代码: 理论基础 贪心算法其实就是没…

文章目录

  • 理论基础
  • 分发饼干
    • 思路:
    • 代码:
  • 摆动序列
    • 思路一 贪心算法:
      • 代码:
    • 思路二:动态规划(想不清楚)
      • 代码:
  • 最大子序和
    • 思路:
      • 代码:

理论基础

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

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

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

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

分发饼干

添加链接描述
在这里插入图片描述

思路:

在这里插入图片描述

从代码中可以看出我用了一个 index 来控制饼干数组的遍历,遍历饼干并没有再起一个 for 循环,而是采用自减的方式,这也是常用的技巧。

有的同学看到要遍历两个数组,就想到用两个 for 循环,那样逻辑其实就复杂了。

代码:

class Solution {public int findContentChildren(int[] g, int[] s) {Arrays.sort(g);Arrays.sort(s);int start = s.length-1;//饼干的下标int res=0;for(int i=g.length-1;i>=0;i--){// 循环判断if(start>=0&&s[start]>=g[i]){res++;start--;}}return res;}
}

摆动序列

在这里插入图片描述

思路一 贪心算法:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

代码:

class Solution {public int wiggleMaxLength(int[] nums) {if (nums.length <= 1) {return nums.length;}//当前差值int curDiff = 0;//上一个差值int preDiff = 0;int count = 1;//默认最右边是峰值for (int i = 0; i < nums.length-1; i++) {//得到当前差值curDiff = nums[i+1] - nums[i];//如果当前差值和上一个差值为一正一负//等于0的情况表示初始时的preDiffif ((curDiff > 0 && preDiff <= 0) || (curDiff < 0 && preDiff >= 0)) {count++;preDiff = curDiff;}}return count;}
}

思路二:动态规划(想不清楚)

在这里插入图片描述

代码:

class Solution {public int wiggleMaxLength(int[] nums) {// 0 i 作为波峰的最大长度// 1 i 作为波谷的最大长度int dp[][] = new int[nums.length][2];dp[0][0] = dp[0][1] = 1;for (int i = 1; i < nums.length; i++){//i 自己可以成为波峰或者波谷dp[i][0] = dp[i][1] = 1;for (int j = 0; j < i; j++){if (nums[j] > nums[i]){// i 是波谷dp[i][1] = Math.max(dp[i][1], dp[j][0] + 1);}if (nums[j] < nums[i]){// i 是波峰dp[i][0] = Math.max(dp[i][0], dp[j][1] + 1);}}}return Math.max(dp[nums.length - 1][0], dp[nums.length - 1][1]);}

最大子序和

在这里插入图片描述

思路:

在这里插入图片描述

在这里插入图片描述

代码:

class Solution {public int maxSubArray(int[] nums) {int sum = Integer.MIN_VALUE;int count = 0;for(int i=0;i<nums.length;i++){count+=nums[i];//?来判断是否结果是负数sum=Math.max(sum,count);// 取区间累计的最大值(相当于不断确定最大子序终止位置)if(count<0){//重置起始位置count=0;}}return sum;}
}
http://www.yayakq.cn/news/365613/

相关文章:

  • 京东网站难做吗车辆管理网站开发
  • 如何设计网站栏目吉林网站开发
  • 提卡网站怎么做网站 跑马灯图片怎么做
  • 河北专业网站建设网上商城建设网站定制开发
  • 海淘网站wordpress搜索表单
  • 怎样自己做网站卖钱小程序代理商怎么赚钱
  • 建网站要多少钱 优帮云买个app需要多少钱
  • 常州网站建设托管网站开发文档的示例
  • 营销型网站解决方案免费开网店的一件代发
  • 凡科建站小程序青岛圭谷网站建设公司
  • 做淘宝客的网站所需空间网络营销策划方案结论
  • 如何安装wordpress模板网站关键词优化排名要怎么做
  • 顺德网站建设公司咨询医院网站建设招标
  • 怎么做一直弹窗口网站帮别人设计网站
  • 设计师必逛网站排名青岛企业建设网站企业
  • WordPress全站跳转竞价网站移动端
  • 简易网站为什么wordpress后台写文章不一样
  • 下载吧网站整站源码360网站怎么做
  • 怎样跟网站做优化呢网络营销的整体概念
  • 自己做网站 需要哪些网站基本维护
  • 买个网站域名多少钱网页编辑软件排行榜
  • 网站开发语言的选择稿定在线图片编辑
  • 网站开发详细设计文档模板网站建设一般多少费用
  • 百度站长平台推出网站移动化大赛服务器里面如何做网站
  • 企业做网站的注意什么问题推广神器app
  • 设计素材网站排行榜前十名广州番禺网站制作公司哪家好
  • 花店网站建设目的网站整合方案
  • 免费找素材软件seo教程资源
  • 那些网站可以做问答怎么做自己的网站主页
  • 怎么制作论坛优化网站公司哪家口碑好