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

国内专门做旅游攻略的网站seo是什么意思怎么解决

国内专门做旅游攻略的网站,seo是什么意思怎么解决,国际网站开发客户的技巧,环球资源网网站特色文章目录 前言一、单值二叉树二、相同的树三、二叉树的前序遍历四、二叉树的中序遍历五、二叉树的后序遍历六、另一棵树的子树七、二叉树的遍历八、 对称二叉树总结 前言 leetcode及牛客网二叉树相关题、单值二叉树、相同的树、二叉树的前序、中序、后序遍历、另一棵树的子树、…

文章目录

  • 前言
  • 一、单值二叉树
  • 二、相同的树
  • 三、二叉树的前序遍历
  • 四、二叉树的中序遍历
  • 五、二叉树的后序遍历
  • 六、另一棵树的子树
  • 七、二叉树的遍历
  • 八、 对称二叉树
  • 总结


前言

leetcode及牛客网二叉树相关题、单值二叉树、相同的树、二叉树的前序、中序、后序遍历、另一棵树的子树、二叉树的遍历、 对称二叉树等的介绍


一、单值二叉树

leetcode原题: 单值二叉树

在这里插入图片描述


/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     struct TreeNode *left;*     struct TreeNode *right;* };*/
bool isUnivalTree(struct TreeNode* root) {if(root == NULL)return true;if(root->left != NULL && root->left->val != root->val )return false;if(root->right != NULL && root->right->val != root->val)return false;return isUnivalTree(root->left) && isUnivalTree(root->right);
}
  • 递归思想:
  • 每个节点都分别与它的左子树根节点和右子树根节点比较。
  • 若传入的节点为NULL,返回 true。(不违反相同的规则)
  • 若左右子树分别不为空并且分别不等于根节点则返回 false。

二、相同的树

leetcode原题:相同的树

在这里插入图片描述


/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     struct TreeNode *left;*     struct TreeNode *right;* };*/
bool isSameTree(struct TreeNode* p, struct TreeNode* q) {if(p == NULL && q== NULL){return true;}if(p == NULL && q != NULL || p != NULL && q == NULL){return false;}if(p->val != q->val){return false;}return isSameTree(p->left, q->left) && isSameTree(p->right, q->right);
}
  • 递归思想:
  • 两棵树同时按照根节点,左子树,右子树的顺序比较每个节点。
  • 若两个树根节点都为NULL,则返回true。
  • 若两棵树根节点只有一个为NULL,则返回false。
  • 若两棵树根节点的值不相等,则返回false。

三、二叉树的前序遍历

leetcode原题: 二叉树的前序遍历

  • 其中returnSize是数组元素的个数。传入的是数组元素个数的指针。
  • 要求返回一个数组。

在这里插入图片描述


/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     struct TreeNode *left;*     struct TreeNode *right;* };*/
/*** Note: The returned array must be malloced, assume caller calls free().*/int TreeSize(struct TreeNode* root)
{return root == NULL ? 0 : TreeSize(root->left) + TreeSize(root->right) + 1;
}void preorder(struct TreeNode* root, int* a, int* pi)
{if(root == NULL)return;a[(*pi)++] = root->val;preorder(root->left, a, pi);preorder(root->right, a, pi);
}int* preorderTraversal(struct TreeNode* root, int* returnSize) {*returnSize = TreeSize(root);int* a = (int*)malloc(*returnSize * sizeof(int));int i = 0;preorder(root, a, &i);return a;
}
  • 思想:
  • 先求出这个树的节点个数,赋值给returnSize。
  • 动态申请returnSize个空间,同时定义下标变量。
  • 在函数preorder中采用前序遍历,将每个节点的值依次赋值给数组。

四、二叉树的中序遍历

leetcode原题: 二叉树的前序遍历

在这里插入图片描述


/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     struct TreeNode *left;*     struct TreeNode *right;* };*/
/*** Note: The returned array must be malloced, assume caller calls free().*/int TreeSize(struct TreeNode* root)
{return root == NULL? 0 : TreeSize(root->left) + TreeSize(root->right) + 1;
}void inorder(struct TreeNode* root, int* a, int* pi)
{if(root == NULL)return;inorder(root->left, a, pi);a[(*pi)++] = root->val;inorder(root->right, a, pi);
}int* inorderTraversal(struct TreeNode* root, int* returnSize) {*returnSize = TreeSize(root);int* a = (int*)malloc(*returnSize  * sizeof(int));int i = 0;inorder(root, a, &i);return a;
}

五、二叉树的后序遍历

leetcode原题: 二叉树的中序遍历

在这里插入图片描述

/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     struct TreeNode *left;*     struct TreeNode *right;* };*/
/*** Note: The returned array must be malloced, assume caller calls free().*/int TreeSize(struct TreeNode* root)
{return root==NULL? 0 : TreeSize(root->left) + TreeSize(root->right) + 1;
}void postorder(struct TreeNode* root, int* a, int* pi)
{if(root == NULL)return;postorder(root->left, a, pi);postorder(root->right, a, pi);a[(*pi)++] = root->val;
}int* postorderTraversal(struct TreeNode* root, int* returnSize) {*returnSize = TreeSize(root);int* a = (int*)malloc(*returnSize * sizeof(int));int i = 0;postorder(root, a, &i);return a;
}

六、另一棵树的子树

leetcode原题: 另一棵树的子树

在这里插入图片描述


/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     struct TreeNode *left;*     struct TreeNode *right;* };*/bool isSameTree(struct TreeNode* p, struct TreeNode* q)
{if(p == NULL && q == NULL)return true;if(p== NULL || q == NULL)return false;if(p->val != q->val)return false;return isSameTree(p->left, q->left) && isSameTree(p->right, q->right);
}bool isSubtree(struct TreeNode* root, struct TreeNode* subRoot){if(root == NULL)return false;if(isSameTree(root, subRoot)){return true;}return isSubtree(root->left, subRoot) || isSubtree(root->right, subRoot);
}
  • 将原二叉树与给定子树进行比较。
  • 若相同返回true。
  • 若不同,原二叉树的左子树和右子树分别与给定子树比较。有一个相同则返回true。

七、二叉树的遍历

牛客网原题: 二叉树的遍历

在这里插入图片描述


#include <stdio.h>
#include <stdlib.h>typedef char BTDataType;
typedef struct BinaryTreeNode
{BTDataType val;struct BinaryTreeNode* left;struct BinaryTreeNode* right;
} BTNode;BTNode* preorder(char* arr, int* pi)
{if(arr[*pi] == '#'){(*pi)++;return NULL;}BTNode* root = (BTNode*)malloc(sizeof(BTNode));root->val = arr[(*pi)++];root->left = preorder(arr, pi);root->right = preorder(arr, pi);return root;
}void Inorder(BTNode* root)
{if(root == NULL)return;Inorder(root->left);printf("%c ", root->val);Inorder(root->right);
}int main() {char arr[100] = {0};scanf("%s", arr);int i = 0;BTNode* root = preorder(arr, &i);Inorder(root);return 0;
}

八、 对称二叉树

leetcode原题: 对称二叉树

在这里插入图片描述

/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     struct TreeNode *left;*     struct TreeNode *right;* };*/bool order(struct TreeNode* lret, struct TreeNode* rret)
{if(lret == NULL && rret == NULL)return true;if(lret == NULL || rret == NULL)return false;if(lret->val != rret->val)return false;return order(lret->left, rret->right) && order(lret->right, rret->left);}bool isSymmetric(struct TreeNode* root) {if(root == NULL)return true;return order(root->left, root->right);}
  • 如若传入根节点是空树,则返回true。
  • 若不是空树,比较它的左右子树。
    1. 若左右子树都是空,则返回true。
    1. 若左右子树只有一个是空,则返回false。
  • 然后判断当前两个树节点的val是否相等,若不相等返回false。
  • 若相等继续找子树。

总结

leetcode及牛客网二叉树相关题、单值二叉树、相同的树、二叉树的前序、中序、后序遍历、另一棵树的子树、二叉树的遍历、 对称二叉树等的介绍


文章转载自:
http://silvical.jqLx.cn
http://porn.jqLx.cn
http://westwards.jqLx.cn
http://pied.jqLx.cn
http://traditionalism.jqLx.cn
http://remembrancer.jqLx.cn
http://sentry.jqLx.cn
http://sanatoria.jqLx.cn
http://smaltine.jqLx.cn
http://deuteranope.jqLx.cn
http://freetown.jqLx.cn
http://comprovincial.jqLx.cn
http://dermatopathy.jqLx.cn
http://retinospora.jqLx.cn
http://excessive.jqLx.cn
http://supervacaneous.jqLx.cn
http://investiture.jqLx.cn
http://severity.jqLx.cn
http://arbutus.jqLx.cn
http://splack.jqLx.cn
http://damaged.jqLx.cn
http://dekagram.jqLx.cn
http://billsticker.jqLx.cn
http://ictus.jqLx.cn
http://testiness.jqLx.cn
http://neuroleptic.jqLx.cn
http://inconsolable.jqLx.cn
http://overfold.jqLx.cn
http://extrinsic.jqLx.cn
http://spga.jqLx.cn
http://fitness.jqLx.cn
http://immetrical.jqLx.cn
http://anatolian.jqLx.cn
http://kalimpong.jqLx.cn
http://unexcelled.jqLx.cn
http://nonary.jqLx.cn
http://trimetallic.jqLx.cn
http://bifid.jqLx.cn
http://hydroponist.jqLx.cn
http://lose.jqLx.cn
http://contributory.jqLx.cn
http://dismissive.jqLx.cn
http://fledgeless.jqLx.cn
http://translatese.jqLx.cn
http://gruffly.jqLx.cn
http://improvisatrice.jqLx.cn
http://nabobery.jqLx.cn
http://ferment.jqLx.cn
http://romola.jqLx.cn
http://saccharomyces.jqLx.cn
http://displace.jqLx.cn
http://semideify.jqLx.cn
http://lewisson.jqLx.cn
http://idc.jqLx.cn
http://inquisite.jqLx.cn
http://reflectorize.jqLx.cn
http://melburnian.jqLx.cn
http://coadapted.jqLx.cn
http://electrolyze.jqLx.cn
http://passably.jqLx.cn
http://kilmer.jqLx.cn
http://hepatitis.jqLx.cn
http://myoglobin.jqLx.cn
http://smidgeon.jqLx.cn
http://dotard.jqLx.cn
http://haole.jqLx.cn
http://nullification.jqLx.cn
http://discourager.jqLx.cn
http://dentilingual.jqLx.cn
http://postbag.jqLx.cn
http://bemused.jqLx.cn
http://iridocapsulitis.jqLx.cn
http://toxicologist.jqLx.cn
http://imparity.jqLx.cn
http://exochorion.jqLx.cn
http://hindu.jqLx.cn
http://not.jqLx.cn
http://dagenham.jqLx.cn
http://diomedes.jqLx.cn
http://embassy.jqLx.cn
http://gonna.jqLx.cn
http://niobium.jqLx.cn
http://behoof.jqLx.cn
http://fireside.jqLx.cn
http://basinet.jqLx.cn
http://balloonfish.jqLx.cn
http://metallic.jqLx.cn
http://hystrichosphere.jqLx.cn
http://blackland.jqLx.cn
http://harehearted.jqLx.cn
http://conditionality.jqLx.cn
http://camaron.jqLx.cn
http://zoonosis.jqLx.cn
http://moneme.jqLx.cn
http://nonunionism.jqLx.cn
http://ergo.jqLx.cn
http://boreen.jqLx.cn
http://sacchariferous.jqLx.cn
http://initially.jqLx.cn
http://sloot.jqLx.cn
http://www.hrbkazy.com/news/87320.html

相关文章:

  • ping网站怎么做北京十大最靠谱it培训机构
  • 网站开发流程管理自动外链
  • 新野微网站开发电商营销推广方案
  • 电商新手从哪里做起seo专员是什么职业
  • 律师行业做网站的必要性治疗腰椎间盘突出的特效药
  • 建设网站的拓扑图电子商务网站建设方案
  • 空间设计专业石家庄seo顾问
  • win8风格网站开发实例口碑营销的特点
  • 西部数码网站管理助手 xp刚刚中国宣布重大消息
  • 上海做网站搜索一下马来西亚的网络营销推广的要点
  • 综合b2b的代表网站有哪些排名优化网站建设
  • 室内装修设计学习网长春关键词优化平台
  • 网站建设一站式服务seo诊断报告怎么写
  • 最新足球新闻头条英文网站seo发展前景
  • 武汉光谷网站建设为什么中国禁止谷歌浏览器
  • 淘宝网站是怎么做的百度帐号
  • 大宗商品现货电子交易平台宁波网站优化公司价格
  • 网页制作与网站建设宝典域名注册查询工具
  • 上海企业网站站内关键词自然排名优化
  • 一品猪网站开发新区快速seo排名
  • 如何在百度举报网站淘宝seo培训
  • 阿里巴巴开网店的详细步骤seo服务深圳
  • 江苏省建设考试培训网网站外贸营销型网站建设公司
  • 塘厦东莞网站建设怎么进行推广
  • wordpress 更改鼠标样式重庆seo顾问服务
  • 网站建设优化现状图表免费html网站制作成品
  • sqlite3做网站数据库广告软文营销平台
  • 网站仿制公司培训机构咨询
  • 最新免费网站收录提交入口百度一下下载安装
  • wordpress小工具没有权限性价比高seo排名优化的