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

可以免费浏览的网站做网站哪个语言快

可以免费浏览的网站,做网站哪个语言快,织梦xml网站地图,做好网络推广的技巧等差数列划分 思路#xff1a; 经验题目要求 dp[i]表示#xff1a;以 i 位置为结尾的所有子数组中有多少个等差数列 状态转移方程 对 dp[i] 位置#xff0c;数列至少有三个元素#xff0c;如果相邻三个为等差数列#xff0c;dp[i] dp[i-1] 1; 如果相邻三个不为等差数…等差数列划分 思路 经验题目要求 dp[i]表示以 i 位置为结尾的所有子数组中有多少个等差数列 状态转移方程 对 dp[i] 位置数列至少有三个元素如果相邻三个为等差数列dp[i] dp[i-1] 1; 如果相邻三个不为等差数列dp[i] 0; 初始化 dp[0] 和 dp[1] 位置都不符合判断要求直接 dp[0] dp[1] 0; 填表顺序 从左往右返回表里所有的和。 class Solution { public:int numberOfArithmeticSlices(vectorint nums) {int n nums.size();vectorint dp(n);int count 0;for(int i 2; in; i){if(nums[i]-nums[i-1] nums[i-1]-nums[i-2])dp[i] dp[i-1]1;elsedp[i] 0;countdp[i];}return count;} };最长湍流子数组 什么叫湍流子数组 像这样一升一降的就叫湍流子数组。 思路 1.经验题目要求 dp[i]表示以 i 位置为结尾的所有子数组中最长湍流子数组的长度。 对于本题如果只定一个状态数组是不够的因为我们只有区分了 i 位置是在增长还是在降低才能判断 i 1 位置是否能续上前面的波浪。所以我们需要定义两个状态数组分别表示以 i 结尾的在增长和降低的最长湍流子数组长度。 f[i] 表示以i 位置为结尾的所有子数组中最后呈现 “ 上升” 状态下的最长湍流数组的长度。 g[i] 表示以i 位置为结尾的所有子数组中最后呈现 “ 下降” 状态下的最长湍流数组的长度。 2.状态转移方程 初始化 单个 存在为1直接初始化全为1。 填表 从左往右两个表一起填写。 class Solution { public:int maxTurbulenceSize(vectorint arr) {int n arr.size();vectorint f(n,1);auto g f;int ret 1;//最差情况是1ret写为1;for(int i 1; in; i){if(arr[i] arr[i-1]){f[i] g[i-1] 1;ret max(ret,f[i]);}else if(arr[i] arr[i-1]){g[i] f[i-1] 1;ret max(ret,g[i]);}}return ret;} };环绕字符串中唯一的子字符串 思路 经验题目要求 dp[i]表示以 i 位置为结尾的所有字串中有多少个在 base 中出现过。 状态转移方程 如果长度为1就是本身字符串为1 长度大于1就要看s[i-1] 1是否等于s[i] ;(特殊情况是“za”的情况) 初始化 dp 表里面所有的值都初始化为1。因为每一个本身字符都在base中出现过。 填表 从左往右填表 去重操作 对于右边的例子abc 在 yzabczabc都出现过我们直接取以c结尾的最大的dp值就可以。 class Solution { public:int findSubstringInWraproundString(string s) {int n s.size();vectorint dp(n,1);for(int i 1; in; i){if(s[i-1] 1 s[i] || (s[i-1] z s[i] a))dp[i] dp[i-1] 1;}int hash[26] {0};for(int i 0; in; i){hash[s[i] - a] max(hash[s[i]-a],dp[i]);}int sum 0;for(auto x : hash) sumx;return sum;} };最长递增子序列 注意这里的子序列 是由数组派生而来的序列删除或不删除数组中的元素而不改变其余元素的顺序。例如[3,6,2,7] 是数组 [0,3,1,6,2,2,7] 的子序列。 思路 经验题目要求 dp[i]表示以 i 位置为结尾的所有子序列中最长递增子序列的长度。 状态转移方程 如果长度为1就为1 长度大于1就要找nums[i] 大于 nums0j里面的子序列大于的话就为dp[i] dp[j] 1; 然后每一次找到dp[i] 里面的最大值并记录。 初始化 全部初始化为1因为长度为1dp[i] 为1. 填表 从左往右填表 class Solution { public:int lengthOfLIS(vectorint nums) {int n nums.size();vectorint dp(n,1);int ret 1;for(int i 1; in; i){for(int j 0; ji; j){if(nums[i] nums[j]){dp[i] max(dp[j] 1,dp[i]);}ret max(ret,dp[i]);}}return ret;} };
http://www.zqtcl.cn/news/237921/

相关文章:

  • 手机号注册网站cms影视源码采集
  • 网站建设网页设计培训班连云港seo优化
  • 成都网站建设公司招聘定制衣服
  • 做访问量高的网站如何建立公司网站推广
  • 做公司的网站有哪些简述企业网站建设的流程
  • 网站免费获取验证码怎么做软件开发的工作
  • 萌宝宝投票网站怎么做正规网站建设多少费用
  • 产权交易网站建设方案耐克网站建设的历程
  • 网站建设投入及费用wordpress 收录插件
  • 东莞网站制作个性化清溪网站仿做
  • 简单展示网站模板天津建设网站哪家好
  • 建个人网站赚钱多吗福建省住房和城乡建设厅网站首页
  • 网站建设课程设计实训心得seo关键词优化方案
  • 逸阳网站建设的目标郑州建设电商网站
  • 有了网址怎么做网站上海网站推广服务
  • 惠州网站seo排名优化esc怎么做网站
  • 咨询公司网站设计网站建设技能
  • 上海湖南网站建设新学校网站建设成果
  • 网站开发有哪些竞赛建站行业新闻
  • 满足seo需求的网站大型网站常见问题
  • 做网站要求高吗珠宝网站建设
  • 网站建设方案 预算高端制作网站哪家专业
  • 响应式网站什么意思长春做个人网站做不了
  • 手机网站排名优化软件网站登陆页面怎么做
  • 辽宁网站建设价格杭江建设有限公司
  • 成立公司在什么网站网络推广推广培训
  • 承德网站制作公司哪家好公司网络组建方案模板
  • 用wordpress 建网站网站关键词怎么改
  • 怎么做网站做站点创建站怎么上传网站怎么办
  • 十堰网站建设专家html做的旅游网站