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

赣州网站建设价位wordpress会员管理

赣州网站建设价位,wordpress会员管理,全国旅游大型网站建设,网站用哪个软件做跳转汇总链接 👉🔗算法题汇总链接 1.1 乘积为正数的最长子数组长度 🔗题目链接 给你一个整数数组 nums ,请你求出乘积为正数的最长子数组的长度。 一个数组的子数组是由原数组中零个或者更多个连续数字组成的数组。 请你返回乘积…

跳转汇总链接

👉🔗算法题汇总链接


1.1 乘积为正数的最长子数组长度

🔗题目链接

给你一个整数数组 nums ,请你求出乘积为正数的最长子数组的长度。
一个数组的子数组是由原数组中零个或者更多个连续数字组成的数组。
请你返回乘积为正数的最长子数组长度。

在写代码前,务必先做好这五步!梳理清楚思路,写代码只是顺手的事儿,这是第一道题,所以会详细描述分析方法,后面的题也是同一个流程~

  1. 状态表示
    • 本题得需要两个 dp 表,这里做 f 表和 g 表(设两个表不是一开始就能看出来的,是分析后得出的。先按照题意设一个记录乘积为正数的的最长子数组的长度 f 表,后面在分析正负数情况的时候发现还需要一个记录负数的,于是增添了 g 表)
    • f[i] 表示:以 i 位置元素为结尾乘积为正数的最长子数组的长度
    • g[i] 表示:以 i 位置元素为结尾乘积为负数的最长子数组的长度
  2. 状态转移方程在这里插入图片描述
    • 分析 f:首先将“子数组乘积为正数”中的“子数组”,分为自身和自身+之前的解,按照题意分为长度为1或者长度大于1,可以分析状态转移方程(如下) 在这里插入图片描述
      • 原本需要分成这两类,是因为一般会取 max(自身,自身+之前的解) 或是 min(自身,自身+之前的解),但是这道题我们可以观察到,列出来的方程中 nums[i] 符号相同时的情况可以覆盖另一个,所以方程可以简单写成如下。
        在这里插入图片描述
    • g 表的分析同理。
      在这里插入图片描述
  3. 初始化
    • 涉及到 -1 的位置可能在填表的时候越界,这里选用在表的首部多加一个空格的方式防止越界,初始化内容为 0,不会影响后续表的填写。
  4. 填表顺序
    • 从左往右,两张表一起填。
  5. 返回值
    • f 表里的最大值。

🐎代码如下:

class Solution {
public:int getMaxLen(vector<int>& nums) {// 1. 创建 dp 表int n = nums.size();vector<int> f(n + 1);   // 乘积为正数的最长数auto g = f;             // 乘积为负数的最长数// 2. 初始化int fmax = 0;f[0] = g[0] = 0;// 3. 誊写状态转移方式for(int i = 1; i < n + 1; i++){if(nums[i - 1] > 0){f[i] = f[i-1] + 1;g[i] = g[i-1] == 0 ? 0 : g[i-1] + 1;}else if(nums[i - 1] < 0){f[i] = g[i-1] == 0 ? 0 : g[i-1] + 1;g[i] = f[i-1] + 1;}fmax = max(fmax, f[i]);}// 4. 返回值return fmax;}
};

🥰如果本文对你有些帮助,欢迎👉 点赞 收藏 关注,你的支持是对作者大大莫大的鼓励!!(✿◡‿◡) 若有差错恳请留言指正~~


http://www.sczhlp.com/news/73615/

相关文章:

  • 关键词搜索网站百家号排名
  • 营销型网站有哪些代表怎么制作软件app流程
  • 营销型网站设计网站商城网络推广
  • 网站asp怎么没有菜单栏wordpress excel导入
  • 自己怎么做优惠券网站深圳it培训机构
  • 时尚网站设计案例2022近期重大新闻事件10条
  • 网站建设分金手指专业十四花木网站模版
  • 龙采做网站要多少钱购物网站建设
  • 做网站需要报备什么做网站多少钱西宁君博领先
  • 番禺附近网站建设推广注册电气师在哪个网站做变更
  • 宝安网站制作哪里好一对一优势的网络营销方式
  • 苏州网站建设师公司简介范文(共10篇)
  • 做网站找哪个织梦网站模板 虎嗅网
  • 云浮新兴县做网站茶叶公司网站的建设
  • 个人怎么制作网站免费网站源码下载器
  • 注册网站排名公司百度快照投诉中心人工电话
  • 一生一心学习记录:一些个人思考。
  • icp备案网站建设方案书线上新媒体电商怎么开店
  • 湘潭网站建设 磐石网络荣誉网站怎么做图片转换
  • 深圳建设网站需要多少钱宁波租房网
  • 检察院门户网站建设成效深圳工业设计展2022
  • vps可以做几个网站建设公司网站法律声明
  • 城建档案网站建设 博客网站地图html怎么做
  • 怎么看出网站是dede做的网站开发工程师认证
  • 食品网站app建设方案国外网站网站app
  • 企业网站源码git中国建筑网招标公告
  • 怎么查询网站开发时间临沂网络建设
  • 做it人经常逛的网站windows优化大师怎么使用
  • 个人网站建设案例教程怎样把网站做成app
  • 婚庆网站建设的需求分析建设企业资质双网是哪两个网站