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

王道数据结构应用题强化表3.1.1-3.1.6

3.1.1 

度为0结点数 = 度为2的结点+1

二叉树的第 i 层上至多有 2^(i-1) 个结点 (i≥1)

深度为 k 的二叉树至多有 2^k - 1 个结点 (k≥1)

3.1.2

#include"stdio.h" 
#include <iostream>
using namespace std;#define MAXSIZE 100typedef struct arrayTree
{//array从下标一开始,下标0标记为长度int array[MAXSIZE+1];
}ArrayTree;ArrayTree a;// 找到父节点
int findFather (int i)
{if (i == 1) return -1;return i/2;
}// 找到左节点
int leftChild (int i)
{if(i*2<=MAXSIZE)return  i*2;return -1;
}// 找到右节点
int rightChild (int i)
{if(i*2+1<=MAXSIZE){return i*2+1;}return -1;
}// 3.1.6 先序遍历
void preOrder(int i) {if (i > MAXSIZE || a.array[i] == 0) return;cout << a.array[i] << " ";  // 访问根节点int left = leftChild(i);if (left != -1) preOrder(left);  // 遍历左子树int right = rightChild(i);if (right != -1) preOrder(right); // 遍历右子树
}// 3.1.6 中序遍历
void inOrder(int i) {if (i > MAXSIZE || a.array[i] == 0) return;int left = leftChild(i);if (left != -1) inOrder(left);  // 遍历左子树cout << a.array[i] << " ";   // 访问根节点int right = rightChild(i);if (right != -1) inOrder(right); // 遍历右子树
}// 3.1.6 后序遍历
void postOrder(int i) {if (i > MAXSIZE || a.array[i] == 0) return;int left = leftChild(i);if (left != -1) postOrder(left);  // 遍历左子树int right = rightChild(i);if (right != -1) postOrder(right); // 遍历右子树cout << a.array[i] << " ";     // 访问根节点
}int main() 
{ a.array[0] = 7;  // 共7个节点a.array[1] = 1;a.array[2] = 2;a.array[3] = 3;a.array[4] = 4;a.array[5] = 5;a.array[6] = 6;a.array[7] = 7;// 测试父节点查找printf("节点5的父节点编号: %d\n", findFather(5));printf("节点3的父节点编号: %d\n", findFather(3));// 测试遍历printf("先序遍历: ");preOrder(1);printf("\n");printf("中序遍历: ");inOrder(1);printf("\n");printf("后序遍历: ");postOrder(1);printf("\n");}

http://www.dtcms.com/a/482981.html

相关文章:

  • JDK 1.8 自动化脚本安装方案
  • 网站备案不通过怎么解决小米网站建设案例
  • 网路原理:UDP协议
  • 什么是区块链主机托管?为何要使用主机托管?
  • R语言空间数据分析实战:机器学习预测、尺度转换与地统计建模
  • 数据结构系列之堆
  • MySQL索引原理
  • 扁平化网站源码云服务器最便宜
  • 一个网站的成功深圳市深企在线技术开发有限公司
  • Python学习-----小游戏之人生重开模拟器(普通版)
  • 上海网站建设的网html网站系统
  • 理解AUROC,AP,F1-scroe,PRO
  • php做网站安全性wordpress 网银
  • 教程上新|重新定义下一代 OCR:IBM 最新开源 Granite-docling-258M,实现端到端的「结构+内容」统一理解
  • 网络原理 -- HTTP
  • 县级门户网站建设的报告网页游戏网站排名
  • 快速创建无线AP热点
  • CSS级联层样式权重和优先级
  • 免费搭建私人网站修改wordpress后台文字
  • 站内推广的方法网络整合营销传播
  • 国际网站建设的目的网站建设预算知乎
  • 瀚海微SD NAND/TF卡:赋能全场景数据存储,定义高效安全新基准
  • 怎样安全地开启MySQL远程管理权限?
  • 建设局网站查询个人信息wordpress首页文章显示固定分类
  • 网站建设多少钱实惠湘潭磐石网络企业网站建设的目的是什么
  • 知微传感Dkam系列3D相机SDK例程篇:Python设置相机触发模式
  • Java 故障分析与性能调优命令详解(含案例)
  • 【Pytorch】激活函数 Loss 梯度 超详细文本笔记
  • 不同材质金冠钳的力学性能及其对修复体就位影响研究
  • vs2015做网站的后端个人怎么做百度竞价