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

请人建网站应注意什么简单几步为wordpress加上留言板

请人建网站应注意什么,简单几步为wordpress加上留言板,建个网站怎么做推广,网站怎么集成支付宝题目来源 96. 不同的二叉搜索树 递归 1.我们要知道二叉搜索树的性质#xff0c;对于一个二叉搜索树#xff0c;其 【左边的节点值 中间的节点值 右边的节点值】#xff0c;也就是说#xff0c;对于一个二叉搜索树#xff0c;其中序遍历之后形成的数组应该是一…题目来源 96. 不同的二叉搜索树 递归 1.我们要知道二叉搜索树的性质对于一个二叉搜索树其 【左边的节点值 中间的节点值 右边的节点值】也就是说对于一个二叉搜索树其中序遍历之后形成的数组应该是一个递增的序列如下图 2.我们不妨就假设我们拿到了一个中序遍历的数组nums [1,2,3,4,5,6,7]来思考一个这样的数组能延伸出多少种二叉搜索树。 首先对于数组中的每一个元素都有可能成为二叉树最顶部的root节点例如上图中是nums[4]这个值即5充当了root节点。 3.还拿5这个节点为例即上图其左边有四个节点右边有两个节点。对于左边的四个节点假设能延伸出 n 种二叉搜索树子树对于右边的两个节点假设能延伸出 m 种二叉搜索树子树。则以5为root节点时的二叉搜索树总数为 m*n 4.这样我们遍历刚刚的nums数组以值i注意不是下标当做根节点其左边有i-1个节点右边有n-i个节点计算出可能的二叉搜索树数量添加到总结果里即可我们初步写出的代码如下 class Solution {public int numTrees(int n) {if(n 0 || n 1){return 1;}int count 0;for(int i 1;in;i){countnumTrees(i-1)*numTrees(n-i);}return count;} }递归优化 其实是出现了很多次重复计算过程举例[1,2,3] 大量的重复计算造成我们时间过长因此我们可以用一个HashMap存储n和子树数量的映射如果已经计算过了当前n的子树数量直接取出用即可 class Solution {private HashMapInteger,Integer map new HashMap();public int numTrees(int n) {if(n 0 || n 1){return 1;}if(map.containsKey(n)){return map.get(n);}int count 0;for(int i 1;in;i){countnumTrees(i-1) * numTrees(n-i);map.put(n,count);}return count;} }动态规划 动规五部曲 1.确定dp数组dp table以及下标的含义 dp[i] 1到i为节点组成的二叉搜索树的个数为dp[i]。 也可以理解是i个不同元素节点组成的二叉搜索树的个数为dp[i] 都是一样的。 2.确定递推公式 在上面的分析中其实已经看出其递推关系 dp[i] dp[以j为头结点左子树节点数量] * dp[以j为头结点右子树节点数量] j相当于是头结点的元素从1遍历到i为止。 所以递推公式dp[i] dp[j - 1] * dp[i - j]; j-1 为j为头结点左子树节点数量i-j 为以j为头结点右子树节点数量 3.dp数组如何初始化 初始化只需要初始化dp[0]就可以了推导的基础都是dp[0]。 那么dp[0]应该是多少呢 从定义上来讲空节点也是一棵二叉树也是一棵二叉搜索树这是可以说得通的。 从递归公式上来讲dp[以j为头结点左子树节点数量] * dp[以j为头结点右子树节点数量] 中以j为头结点左子树节点数量为0也需要dp[以j为头结点左子树节点数量] 1 否则乘法的结果就都变成0了。 所以初始化dp[0] 1 4.确定遍历顺序 首先一定是遍历节点数从递归公式dp[i] dp[j - 1] * dp[i - j]可以看出节点数为i的状态是依靠 i之前节点数的状态。 那么遍历i里面每一个数作为头结点的状态用j来遍历。 for(int i 1;i n;i){for(int j 1;ji;j){dp[i] dp[j-1]*dp[i-j];}}5.举例推导dp数组 n为5时候的dp数组状态如图 整体代码 class Solution {public int numTrees(int n) {int[] dp new int[n1];dp[0] 1;for(int i 1;i n;i){for(int j 1;ji;j){dp[i] dp[j-1]*dp[i-j];}}return dp[n];} }
http://www.w-s-a.com/news/544804/

相关文章:

  • centos7做网站软件实施工程师工资一般多少
  • 专业房产网站建设深圳建设交易集团
  • 政务网站建设标准项目经理接到网站开发怎么开展
  • 网站框架设计好后怎么做网站广告销售怎们做
  • asp技校网站保定八大平台公司
  • wordpress网站前端优化网站备案批量查询
  • 北京企业做网站杭州seo中心
  • 护肤品网站建设前的行业分析wordpress电子书模板
  • 做网站怎么销售.net开发网站怎么样
  • 蚌埠网站优化网站换空间wordpress
  • 微网站开发框架公司企业logo
  • 大淘客官网做的网站打不开网站建设完成
  • 婚纱摄影网站模板让别人做网站怎样才安全
  • 技术支持 骏域网站建设专家佛山网站运营管理教材
  • 个体营业执照可以做网站服务吗电商运营学校培训
  • 企业网站免费推广的方法.wordpress 爱情模板下载地址
  • 轻淘客 轻网站怎么做手机开发人员选项怎么打开
  • 天津做网站制作公司html网站 下载
  • 哪个网站的课件做的好crm客户管理系统全称
  • 网站建设工作室创业计划书seo是什么职位的简称
  • o2o平台网站开发什么是白帽seo
  • 免费建个人手机网站WordPress 简历库
  • 建网站 是否 数据库阳瘘的最佳治疗方法是什么
  • 知晓程序网站怎么做网站基础维护
  • 兼职做网站赚钱吗图片设计制作哪个软件好手机
  • 做手机旅游网站智慧校园登录入口
  • 莆田网站建设维护国外极简网站
  • 百度怎样收录网站缪斯设计集团
  • 网站建设在开封找谁做wordpress 数据转换
  • 旅游网站开发的流程江苏付费网络推广培训