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

drupal wordpress烟台软件优化网站

drupal wordpress,烟台软件优化网站,aso优化推广,建设银行官网app目录 一、翻转二叉树 1.1 题目链接 1.2 题目描述 1.3 解题思路 二、二叉树最大深度 2.1 题目链接 2.2 题目描述 2.3 解题思路 三、二叉树中序遍历 3.1 题目链接 3.2 题目描述 3.3 解题思路 一、翻转二叉树 1.1 题目链接 翻转二叉树 1.2 题目描述 1.3 解题思路 根…目录 一、翻转二叉树 1.1 题目链接 1.2 题目描述 1.3 解题思路 二、二叉树最大深度 2.1 题目链接 2.2 题目描述 2.3 解题思路 三、二叉树中序遍历 3.1 题目链接 3.2 题目描述 3.3 解题思路 一、翻转二叉树 1.1 题目链接 翻转二叉树 1.2 题目描述 1.3 解题思路 根据题目很显然得出我们就只需要交换除了根的节点的左右孩子。我们这里采用递归解决问题那么递归的结束条件又是什么呢当该节点是空节点时就结束。思路就是这样我们来动手实现一下。 struct TreeNode {int val;struct TreeNode *left;struct TreeNode *right; };struct TreeNode* invertTree(struct TreeNode* root) {if(root NULL)return NULL;struct TreeNode* temp root-left;root-left root-right;root-right temp;if(root-left)invertTree(root-left);if(root-right)invertTree(root-right);return root; } 二、二叉树最大深度 2.1 题目链接 二叉树最大深度 2.2 题目描述 2.3 解题思路 在上面解决翻转二叉树问题时我们就用到了递归。在解决二叉树的题目通常都会使用到递归大家要好好的复习一下递归。我们把这颗二叉树拆解成根和左右子树后面把左右子树也当作根来继续拆解直到根为空节点时就不再进行拆解。递归的结束条件就是根为空节点因为是最大深度所以我们需要比较左右子树的高度我们可以定义一个指针来计入高度为什么用指针因为要改变计数器要影响到外面那为什么不用全局变量呢全局变量比较麻烦也可以采用另外一种。本人比较懒就采用了另外一种。 struct TreeNode {int val;struct TreeNode *left;struct TreeNode *right; };int maxDepth(struct TreeNode* root) {if(root NULL)return 0;int left maxDepth(root-left);int right maxDepth(root-right);return left right? left1:right1; } 三、二叉树中序遍历 3.1 题目链接 二叉树中序遍历 3.2 题目描述 3.3 解题思路 还是老样子采用递归来解决首先我们要知道中序是什么中序是先遍历 左子树、根、再到右子树根据题目知道我们要返回遍历并且计入了中序顺序的二叉树。只有完全二叉树和满二叉树我们才会采用数组进行实现一般情况我们都是采用链表的结构来实现二叉树那我们就需要开辟空间了。我们就会存在一个问题应该开辟多少空间合适呢可以和之前实现单向链表一样开辟一点点后续不够继续申请空间这里我有一个不一样的方法那就是我们计算得到有多少个节点就开辟多少个空间。struct TreeNode* root, int* returnSize 题目给了我们两个参数其中一个是二叉树那另外一个参数有什么用呢我感觉int* returnSize是类似一个计数的参数。因为要返回遍历并且计入了中序顺序的二叉树所以我们可以定义一个数组来储存。那我们就需要封装成另外一个函数来实现了 void preorder(struct TreeNode* root, int* res ,int* returnSize)函数目的实现中序遍历后的储存数据。我们要好好的体会一下中序遍历的写法 左子树 、根 、右子树。 计算二叉树节点个数 int TreeSize(struct TreeNode* root)//计算二叉树节点个数 {return root NULL ? 0 :TreeSize(root-left) TreeSize(root-right) 1; } 实现中序遍历后的储存数据 void preorder(struct TreeNode* root, int* res ,int* returnSize) {if(root NULL){return;}preorder(root-left, res ,returnSize);//左res[(*returnSize)]root-val;//根preorder(root-right, res ,returnSize);//右 } void preorder(struct TreeNode* root, int* res ,int* returnSize) {if(root NULL){return;}preorder(root-left, res ,returnSize);//左res[(*returnSize)]root-val;//根preorder(root-right, res ,returnSize);//右 }int TreeSize(struct TreeNode* root) {return root NULL ? 0 :TreeSize(root-left) TreeSize(root-right) 1; }int* inorderTraversal(struct TreeNode* root, int* returnSize) {int size TreeSize(root);int* res malloc(sizeof(int) * size);*returnSize 0;preorder(root, res, returnSize);return res; }
http://www.hkea.cn/news/14315267/

相关文章:

  • 长沙网站优化页面shop商城系统
  • 做网站建设工资高吗网页制作参考文献
  • 找人做网站注意什么机械加工网上订单怎么接
  • 新华路街道网站建设社交做的最好的网站有哪些
  • 新手建站包装网站模板
  • 马蜂窝是什么做的网站怎么让自己的网站通过域名访问不了
  • 什么网站做简历好做网站开发app
  • 高端网站建设 骆百度seo发包工具
  • 公司介绍网站模板徐州商城建站系统
  • 工友洗手粉网站建设中关于拳馆网站建设计划书
  • 如何发布一个自己的网站wordpress返现
  • 云南住房和城乡建设厅网站首页佛山网站建设的公司
  • 做网站暴利做快递网站难吗
  • 比较好看的网站做留言的网站
  • vs2008做网站教程wordpress的ip有什么用
  • 网站建设网站排行盐城哪家做网站的正规
  • 网站备案核验单怎么选云南人事考试网官网
  • 优秀网站介绍网站备案在哪里备案
  • 网站建设服务商的网站建设流程wordpress调用2个表
  • asp网站显示空白深圳东门动漫城
  • 垂直网站建设步骤做网站公司汉狮价格
  • 美食城网站建设策划书网站功能模块图
  • 怎么在携程旅行做网站兰溪市建设局官方网站
  • 建微信网站模板指数运算法则
  • 徐州手机网站推广公司哪家好网站建设一般怎么付款
  • php 开源企业网站杭州房价暴跌已开始
  • 公司要想做个网站这么弄什么 的提升自己的网站
  • 什么网站做新产品代理购物网站建设技术难点
  • 文字域名可以做网站网站幻灯片效果
  • 青海农业网站建设公司建设网站的虚拟机配置