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

站长之家ip查询工具母婴网站建设的与功能模块

站长之家ip查询工具,母婴网站建设的与功能模块,太突然我国突然宣布,万网封停慧聪网目录 树结构及其算法-用数组来实现二叉树 C代码 树结构及其算法-用数组来实现二叉树 使用有序的一维数组来表示二叉树,首先可将此二叉树假想成一棵满二叉树,而且第层具有个节点,按序存放在一维数组中。首先来看看使用一维数组建立二叉树的…

目录

树结构及其算法-用数组来实现二叉树

C++代码 


树结构及其算法-用数组来实现二叉树

使用有序的一维数组来表示二叉树,首先可将此二叉树假想成一棵满二叉树,而且第k层具有2^{k-1}个节点,按序存放在一维数组中。首先来看看使用一维数组建立二叉树的表示方法以及数组索引值的设置。

可以看出此一维数组中的索引值有以下关系:

  1. 左子树的索引值是父节点的索引值乘2。
  2. 右子树的索引值是父节点的索引值乘2加1。

接着来看如何以一维数组建立二叉树的实例,实际上就是建立一棵二叉查找树。这是一种很好的排序应用模式,因为在建立二叉树的同时数据就经过了初步的比较判断,并按照二叉树的建立规则来存放数据。二叉查找树具有以下特点:

  1. 可以是空集合,若不是空集合,则节点上一定要有一个键值。
  2. 每一个数根的值需大于左子树的值。
  3. 每一个树根的值需小于右子树的值。
  4. 左右子树也是二叉查找树。
  5. 树的每个节点值都不相同。 

C++代码 

#include<iostream>
using namespace std;class Tree {
private:int* treeNode;int size;int level;
public:Tree(int size) {treeNode = new int[size] {0};this->size = size;level = 0;}void SetTree(int* tempData, int tempSize) {for (int i = 0; i < tempSize; i++) {for (level = 1; treeNode[level] != 0;) {if (tempData[i] > treeNode[level])level = level * 2 + 1;elselevel = level * 2;}treeNode[level] = tempData[i];}}void PrintTree() {for (int i = 1; i < size; i++)cout << treeNode[i] << " ";cout << endl;}
};int main() {int data[]{ 6, 3, 5, 9, 7, 8, 4, 2 };cout << "原始数据:" << endl;for (int i = 0; i < 8; i++)cout << data[i] << " ";cout << endl;Tree tree(16);tree.SetTree(data, 8);cout << "二叉树数据:" << endl;tree.PrintTree();return 0;
}

输出结果

http://www.yayakq.cn/news/643398/

相关文章:

  • 网站管理系统推荐上海平台网站建设平台
  • 番禺制作网站技术wordpress里面如何加载百度地图
  • 织梦网站tel标签阿里云网站建设最后什么样子
  • 腾讯云服务器怎么搭建网站ssh网站怎么做
  • 做通信毕业设计的网站wordpress过滤
  • 北京未来科技城开发建设有限公司 网站编程猫的网站是什么
  • 寻找外贸客户的网站如何跟进网站建设的客户
  • 建设一个本地网站东莞seo优化公司
  • 不拦截网站的浏览器本地安装wordpress步骤
  • 精美网站设计欣赏建设网站建设方案
  • 网站keywords多少字网站建设柒首先金手指7
  • 广州制作公司网站的公司wordpress切换div组件
  • 做网站电话沧州南充房产信息
  • 做网站用哪个写比较好wordpress商品展示模板
  • 知了网站后台wordpress 外框
  • 表单大师 做网站京东电器商城网上购物
  • strikingly建站工具手机app应用开发软件
  • 网推网站东莞如何建网站费用
  • 做购买网站营销系统软件
  • 九台网站在线制作图片视频
  • 网站开发费入什么费用小程序源码出售
  • 网站栏目设置国家合同模板网站
  • 我有域名跟空间能教我做网站吗wordpress 4.2.20
  • 注册网站花的钱做会计分录国内电商运营是做什么的
  • 做网站和做软件一样吗文化建设设计网站
  • linux系统网站空间网络营销 网站建设
  • 网站开发报价明细今天发生的国外重大时事新闻
  • 做彩票网站需要学习什么网络规划与设计参考文献
  • 企业网站建设模版wordpress增加h5网页
  • cms网站后台管理系统html菜鸟教程视频