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

挂机宝怎么做网站全网关键词优化公司哪家好

挂机宝怎么做网站,全网关键词优化公司哪家好,可以做外国网站文章,代码之家目录 前言: 一:链式二叉树的结构定义 二:链式二叉树的遍历--->前序,中序,后序 1.前序 递归展开图分析 2.中序 递归展开图分析 3.后序 三:二叉树结点的求解 1.二叉树总结点 递归展开分析 2…

目录

 前言:

一:链式二叉树的结构定义

 二:链式二叉树的遍历--->前序,中序,后序

1.前序

 递归展开图分析

2.中序 

递归展开图分析 

3.后序 

三:二叉树结点的求解 

1.二叉树总结点

递归展开分析 

2.二叉树叶子结点数 

递归展开分析 

3.二叉树第k层节点个数 

递归展开分析 

四:二叉树的高度 

五:总结语


接下来的日子会顺顺利利,万事胜意,生活明朗-----------林辞忧

 前言:

链式二叉树作为后续AVL树,B系列树的雏形,理解掌握链式二叉树的各种操作很重要,此处就需要用递归来实现链式二叉树的各种操作,相信认真学习过后会对递归有更深刻的理解,接下来我们就开始上菜

一:链式二叉树的结构定义

链式二叉树的结构由指针域和数值域组成,况且链式二叉树并不都是完全二叉树,还有普通二叉树,每个节点最多两个孩子

 二:链式二叉树的遍历--->前序,中序,后序

1.前序

BTNode* Buynode(int x)
{BTNode* newnode = (BTNode*)malloc(sizeof(BTNode));if (newnode == NULL){perror("malloc fail\n");return NULL;}newnode->left = NULL;newnode->right = NULL;newnode->data = x;return newnode;
}BTNode* CreatTree()
{BTNode* n1 = Buynode(1);BTNode* n2 = Buynode(2);BTNode* n3 = Buynode(3);BTNode* n4 = Buynode(4);BTNode* n5 = Buynode(5);BTNode* n6 = Buynode(6);BTNode* n7 = Buynode(7);n1->left = n2;n1->right = n3;n2->left = n4;n2->right = n5;n3->left = n6;n3->right = n7;return n1;
}
void PrevOrder(BTNode* root)
{if (root == NULL){printf("N ");return ;}printf("%d ", root->data);PrevOrder(root->left);PrevOrder(root->right);
}
 递归展开图分析

2.中序 

void InOrder(BTNode* root)
{if (root == NULL){printf("N ");return;}InOrder(root->left);printf("%d ", root->data);InOrder(root->right);
}
递归展开图分析 

3.后序 

void PostOrder(BTNode* root)
{if (root == NULL){printf("N ");return;}PostOrder(root->left);PostOrder(root->right);printf("%d ", root->data);
}

后续递归展开图同上展开即行

三:二叉树结点的求解 

1.二叉树总结点

// 二叉树节点个数
int BinaryTreeSize(BTNode* root)
{if (root == NULL)//递归结束条件{return 0;}return BinaryTreeSize(root->left) + BinaryTreeSize(root->right) + 1;//从左子树和右子树中分别计数
}
递归展开分析 

2.二叉树叶子结点数 

// 二叉树叶子节点个数
int BinaryTreeLeafSize(BTNode* root)
{if (root == NULL)//空树返回0return 0;if (root->left == NULL && root->right == NULL)//叶子节点无孩子return 1;return BinaryTreeLeafSize(root->left)//递归往下寻找 + BinaryTreeLeafSize(root->right);
}
递归展开分析 

3.二叉树第k层节点个数 

// 二叉树第k层节点个数
int BinaryTreeLevelKSize(BTNode* root, int k)
{if (root == NULL)return 0;if (k == 1)//循环走到k==1时停止,且不为空return 1;//分治思想:转化为求k-1层的节点数return BinaryTreeLevelKSize(root->left, k - 1) + BinaryTreeLevelKSize(root, k - 1);
}
递归展开分析 

四:二叉树的高度 

//二叉树的高度
int BinaryTreeHeight(BTNode* root)
{if (root == NULL)return 0;//记录左右长度,再进行比较int leftHeight = BinaryTreeHeight(root->left);int rightHeight = BinaryTreeHeight(root->right);return leftHeight > rightHeight ? leftHeight + 1 : rightHeight + 1;
}

 此图递归展开图就省略了昂

五:总结语

学会二叉树得学会画图,实在不懂时,画画递归展开图会好很多的

http://www.dinnco.com/news/26034.html

相关文章:

  • wordpress后台点击菜单没反应应新乡百度关键词优化外包
  • 哪个网站做的w7系统好各大网站推广平台
  • 衡阳商城网站建设打字赚钱平台 学生一单一结
  • 魔力百科网站做料理视频seo技术培训岳阳
  • 网站建设设计报告前言百度数据研究中心
  • WordPress显示不出广告如何优化推广中的关键词
  • 如何做二级域名子目录网站百度热搜广告设计公司
  • 日照官方网站建设项目seo网络营销推广排名
  • 怎么在网站标题做logo网站百度关键词seo排名优化
  • 可以随意做配搭的网站百度竞价排名费用
  • 网站建设业务怎么跑疫情最新情况 最新消息 全国
  • 菏泽做网站建设的公司国内外搜索引擎大全
  • 保定网站制作公司高州新闻 头条 今天
  • 道真县住房和城乡建设局网站网络营销与直播电商专业介绍
  • 怎么查看网站是哪个公司做的营销心得体会感悟300字
  • 管理系统是网站吗sem竞价课程
  • wordpress手机版弹出式导航上海seo优化
  • 遵义市做网站设计公司网络关键词优化方法
  • 网站的导航用css怎么做seo常用工具网站
  • 政府网站建设管理工作落实情况北京营销推广网站建设
  • 下载网页图片重庆seo优化推广
  • 淘客网站建设带appseo sem是什么意思
  • 手机网站图片自适应友情链接的获取途径有哪些
  • 丹东网站建设公司关键词优化的方法有哪些
  • 郑州网站推广seo建站技术
  • 网站制作深百度下载并安装最新版
  • wordpress修改引用地址扬州seo推广
  • 品牌网站建设小i蝌蚪品牌营销策划怎么写
  • 做一个自己的免费网站吗百度引流平台
  • 响应式外贸建站百度助手