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

昆明网站建设_云南网站建设电商的推广方式有哪些

昆明网站建设_云南网站建设,电商的推广方式有哪些,网站开发过程中遇到的问题及解决办法,重庆网站制作企业动态规划基础题,当前所在元素来自上一行的两列的值。 题目 从图可以看出,每一行的第一个数与最后一个数都是1,然后中间的数是来自它左上方和右上方的数的和。当然并不是要打印这个三角形的形状,因此可以想到正常的打印方式应该是…

动态规划基础题,当前所在元素来自上一行的两列的值。

题目

从图可以看出,每一行的第一个数与最后一个数都是1,然后中间的数是来自它左上方和右上方的数的和。当然并不是要打印这个三角形的形状,因此可以想到正常的打印方式应该是从每一行的左边往右边打的,默认的打印与循环的三角形的每一行每一列应该是这样的。

1
1 2 1
1 3 3 1
1 4 6 4 1

从这里就可以开始写循环遍历了,用外循环i去控制行,然后用j表示每一行的每一列即每个元素,可以看到排除首尾是1的情况,就是当前数由上方跟左上方得来,不需要右上方,按这个排列的图找规律。然后排去首尾特殊的数,还发现到,每一行需要dp的数量跟当前行号是一致的,注意这里的行号从0开始,即第一行有一个数为2,第二行有两个数3、3等等。然后就可以依照这些规律写dp了,这里用了嵌套动态数组去加每一行每一列,里面的数组对应每一行的数组,然后外层即一个大的list了。

状态转移方程为:dp[i][j] = dp[i - 1][j - 1] + dp[i - 1][j],这里的get是用来读取arraylist的值。

时间复杂度:O(numRows^2),空间复杂度:O(1)。

class Solution {public List<List<Integer>> generate(int numRows) {List<List<Integer>> res = new ArrayList<List<Integer>>();for (int i = 0; i < numRows; i++) {List<Integer> row = new ArrayList<Integer>();for (int j = 0; j <= i; j++) {  //每一行的数量是行号if (j == 0 || j == i) {row.add(1);//每一行的首尾} else {row.add(res.get(i - 1).get(j - 1) + res.get(i - 1).get(j));//由上一个跟上一个的附近一个得来}}res.add(row);//加入每一行}return res;}
}

动态规划找规律写状态转移方程还是很重要的。

http://www.tj-hxxt.cn/news/10963.html

相关文章:

  • 做pos机网站有必要么海外aso优化
  • 那个网站做国外售货在哪里做推广效果好
  • 制作网站南京菏泽百度推广公司电话
  • wordpress多站点文章调用沈阳seo关键词
  • 机关内网站建设方案书开网站怎么开
  • 网站定制开发与模版品牌营销咨询公司
  • 做生鲜管理系统的网站百度风云榜明星
  • 网站做视频网站关键词
  • 网站设计培训学校电视剧百度搜索风云榜
  • 好的网站2020百度联盟一天多少收入
  • 做一手机网站需要多少钱上海seo关键词优化
  • 公司开发的网站seo运营经理
  • wordpress视频上传太小seo优化技术培训
  • wordpress所有分类北京seo代理商
  • 旅游网官网南京百度关键字优化价格
  • 互联网营销师是什么抖音seo关键词优化排名
  • 如何自己做时时彩网站招聘网站排名
  • 做老电影网站侵权吗大数据查询平台
  • 金华市建设局网站职称业务多平台怎么样
  • 南通制作手机网站站长平台工具
  • wordpress auth_key百度免费优化
  • 企业网站需要在电信做哪些备案精准营销的概念
  • php做视频网站有哪些软件下载网站关键词优化排名技巧
  • 图片类网站建设信阳seo公司
  • 网站建设项目详情如何引流推广产品
  • 怎样做网站认证网店推广的方式
  • 怎么做学校官方网站友妙招链接怎么弄
  • 海伦网站建设微信小程序官网
  • 做 理财网站有哪些网站关键词百度自然排名优化
  • 东台网站制作站长查询站长工具