二手网站设计与建设最新外贸seo

pingmian/2025/10/13 14:31:46/文章来源:
二手网站设计与建设,最新外贸seo,免费服务器建站,公司网站建设合同书文章目录 5.1 树的基本概念5.1.1 树的定义5.1.2 森林的定义5.1.3 树的术语5.1.4 树的表示 5.2 二叉树5.2.1 二叉树1. 定义2. 特点3. 性质引理5.1#xff1a;二叉树中层数为i的结点至多有 2 i 2^i 2i个#xff0c;其中 i ≥ 0 i \geq 0 i≥0。引理5.2#xff1a;高度为k的二叉… 文章目录 5.1 树的基本概念5.1.1 树的定义5.1.2 森林的定义5.1.3 树的术语5.1.4 树的表示 5.2 二叉树5.2.1 二叉树1. 定义2. 特点3. 性质引理5.1二叉树中层数为i的结点至多有 2 i 2^i 2i个其中 i ≥ 0 i \geq 0 i≥0。引理5.2高度为k的二叉树中至多有 2 k 1 − 1 2^{k1}-1 2k1−1个结点其中 k ≥ 0 k \geq 0 k≥0。引理5.3设T是由n个结点构成的二叉树其中叶结点个数为 n 0 n_0 n0​度数为2的结点个数为 n 2 n_2 n2​则有 n 0 n 2 1 n_0 n_2 1 n0​n2​1。 4. 满二叉树5. 完全二叉树 5.2.2 二叉树顺序存储典例例题C语言实现答案 5.1 树的基本概念 5.1.1 树的定义 一棵树是结点的有限集合T 若T非空则 有一个特别标出的结点称作该树的根记为root(T)其余结点分成若干个不相交的非空集合T1, T2, …, Tm (m0)其中T1, T2, …, Tm又都是树称作root(T)的子树。 T 空时为空树记作root(T)NULL。 5.1.2 森林的定义 一个森林是0棵或多棵不相交非空树的集合通常是一个有序的集合。换句话说森林由多个树组成这些树之间没有交集且可以按照一定的次序排列。在森林中每棵树都是独立的具有根节点和子树树与树之间没有直接的连接关系。   森林是树的扩展概念它是由多个树组成的集合。在计算机科学中森林也被广泛应用于数据结构和算法设计中特别是在图论和网络分析等领域。 5.1.3 树的术语 父亲parent、儿子child、兄弟sibling、后裔descendant、祖先ancestor度degree、叶子节点leaf node、分支节点internal node结点的层数路径、路径长度、结点的深度、树的深度 参照前文【数据结构】树与二叉树一树森林的基本概念父亲、儿子、兄弟、后裔、祖先、度、叶子结点、分支结点、结点的层数、路径、路径长度、结点的深度、树的深度 5.1.4 树的表示 【数据结构】树与二叉树二树的表示C语言树形表示法、嵌套集合表示法、嵌套括号表示法 、凹入表示法 5.2 二叉树 5.2.1 二叉树 1. 定义 二叉树是一种常见的树状数据结构它由结点的有限集合组成。一个二叉树要么是空集被称为空二叉树要么由一个根结点和两棵不相交的子树组成分别称为左子树和右子树。每个结点最多有两个子结点分别称为左子结点和右子结点。 2. 特点 二叉树的特点是每个结点最多有两个子结点并且子结点的位置是有序的即左子结点在前右子结点在后。这种有序性使得二叉树在搜索、排序等算法中有广泛的应用。 在二叉树中根结点是整个树的起始点通过根结点可以访问到整个树的其他结点。每个结点都可以看作是一个独立的二叉树它的左子树和右子树也是二叉树。 二叉树可以是空树也可以是只有根结点的树或者是由多个结点组成的树。每个结点可以包含一个数据元素以及指向左子结点和右子结点的指针。 二叉树的形状可以各不相同它可以是平衡的或者不平衡的具体取决于结点的分布情况。在二叉树中每个结点的左子树和右子树都是二叉树因此可以通过递归的方式来处理二叉树的操作。 3. 性质 引理5.1二叉树中层数为i的结点至多有 2 i 2^i 2i个其中 i ≥ 0 i \geq 0 i≥0。 引理5.2高度为k的二叉树中至多有 2 k 1 − 1 2^{k1}-1 2k1−1个结点其中 k ≥ 0 k \geq 0 k≥0。 引理5.3设T是由n个结点构成的二叉树其中叶结点个数为 n 0 n_0 n0​度数为2的结点个数为 n 2 n_2 n2​则有 n 0 n 2 1 n_0 n_2 1 n0​n2​1。 详细证明过程见前文【数据结构】树与二叉树三二叉树的定义、特点、性质及相关证明 4. 满二叉树 定义5.3一棵非空高度为 k ( k ≥ 0 ) k( k≥0) k(k≥0)的满二叉树(perfect binary tree)是有 2 k 1 − 1 2^{k1}-1 2k1−1个结点的二叉树。 5. 完全二叉树 定义5.4一棵包含 n n n个节点、高度为 k k k的二叉树 T T T当按层次顺序编号 T T T的所有节点对应于一棵高度为 k k k的满二叉树中编号由1至 n n n的那些节点时 T T T被称为完全二叉树complete binary tree。 满二叉树、完全二叉树性质及证明【数据结构】树与二叉树四满二叉树、完全二叉树及其性质 5.2.2 二叉树顺序存储 二叉树的顺序存储是指将二叉树中所有结点按层次顺序存放在一块地址连续的存储空间中   对于完全二叉树结点的层次顺序反映了其结构可按层次顺序给出一棵完全二叉树之结点的编号事实上这就是完全二叉树的顺序存储方法结点编号恰好反映了结点间的逻辑关系。   只要对完全二叉树之结点按照层次顺序进行编号就可利用一维数组 A A A来存储一棵含有 n n n个结点的完全二叉树其中A[1]存储二叉树的根结点A[i]存储二叉树中编号为i的结点并且结点A[i]的左儿子若存在存放在A[2i]处而A[i]的右儿子若存在存放在A[2i1]处。注意这里我们约定数组索引从1开始而不是从0开始在使用数组存储完全二叉树时需要留出A[0]位置不使用。 典例 首先我们按照完全二叉树的结点顺序进行编号从上到下、从左到右依次编号。根据给出的完全二叉树我们可以得到以下结点编号 1/ \2 3/ \4 5接下来我们可以利用一维数组来存储这棵完全二叉树。创建一个大小为6的数组A其中A[1]表示根结点 A A AA[2]表示结点 B B BA[3]表示结点 E E EA[4]表示结点 C C CA[5]表示结点 D D D。 索引 1 2 3 4 5 数组 [ A, B, E, C, D ]根据完全二叉树的性质结点 A A A的左儿子应该存放在A[2]的位置右儿子应该存放在A[3]的位置。结点 B B B的左儿子应该存放在A[4]的位置右儿子应该存放在A[5]的位置。 例题 画出下面这棵完全二叉树的顺序存储结构 答案见文末 答案见文末 答案见文末 完全二叉树的顺序存储方式是一种简单且节省空间的存储方式。它只需要使用一个一维数组来存储完全二叉树的结点信息域的值而不需要额外的空间来存储左儿子和右儿子的地址。 通过计算结点的编号和数组索引之间的关系我们可以方便地找到结点的左儿子、右儿子和父亲结点。例如对于结点i它的左儿子的编号是2i右儿子的编号是2i1父亲结点的编号是⌊i/2⌋。这种计算关系使得寻找子孙结点和祖先结点变得非常方便和高效。 顺序存储方式的优点是节省了存储空间同时访问结点也非常快速因为可以通过数组索引直接访问结点而不需要进行指针的跳转。然而顺序存储方式也有一些限制。由于使用数组存储需要提前确定完全二叉树的最大结点个数因此对于结点数不确定或者动态变化的情况下顺序存储方式可能不适用。 C语言实现 注意这里我们约定数组索引从0开始节点位置计算公式与前文略有不同。 #include stdio.h #include stdlib.h#define MAX_SIZE 100 // 定义数组的最大大小// 二叉树的顺序存储结构 typedef struct {char data[MAX_SIZE]; // 数组用于存储结点的数据int size; // 二叉树的大小结点个数 } BinaryTree;// 初始化二叉树 void initBinaryTree(BinaryTree* tree) {tree-size 0; }// 向二叉树中插入结点 void insertNode(BinaryTree* tree, int value, int index) {if (tree-size MAX_SIZE) {printf(Binary tree is full. Cannot insert more nodes.\n);return;}if (index 0 || index tree-size) {printf(Invalid index.\n);return;}// 将插入位置后的结点后移for (int i tree-size - 1; i index; i--) {tree-data[i 1] tree-data[i];}// 插入新结点tree-data[index] value;tree-size; }// 获取结点的父节点编号 int getParentIndex(int index) {return (index - 1) / 2; }// 获取结点的左子节点编号 int getLeftChildIndex(int index) {return 2 * index 1; }// 获取结点的右子节点编号 int getRightChildIndex(int index) {return 2 * index 2; }// 根据索引获取结点的值 char getNodeValue(BinaryTree* tree, int index) {if (index tree-size || index 0) {printf(Invalid index.\n);return -1;}return tree-data[index]; }int main() {BinaryTree tree;initBinaryTree(tree);// 向二叉树中插入结点insertNode(tree, A, 0); insertNode(tree, B, 1); insertNode(tree, E, 2); insertNode(tree, C, 3); insertNode(tree, D, 4); // 获取结点的值和子节点的值char rootValue getNodeValue(tree, 0);char leftChildValue getNodeValue(tree, getLeftChildIndex(0));char rightChildValue getNodeValue(tree, getRightChildIndex(0));printf(Root value: %c\n, rootValue);printf(Left child of Root: %c\n, leftChildValue);printf(Right child of Root: %c\n, rightChildValue);printf(the Parent of B: %c\n, getNodeValue(tree, getParentIndex(1)));printf(the Parent of C: %c\n, getNodeValue(tree, getParentIndex(3)));printf(the Parent of D: %c\n, getNodeValue(tree, getParentIndex(4)));printf(the Parent of E: %c\n, getNodeValue(tree, getParentIndex(2)));return 0; } 答案

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/88206.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站建设价格费用石家庄鹿泉网站建设

CSRF(Cross-Site Request Forgery,跨站请求伪造)是一种常见的网络安全攻击方式,攻击者利用用户已经通过认证的身份在受信任网站上执行未经用户授权的操作。 CSRF 攻击的一般过程如下: 用户登录受信任网站 A&#xff…

沙漠风网站开发怎样打造一个app需要多少钱

sass的优缺点 优点:css预处理器为css增加一些编程的特性,无需考虑浏览器的兼容性问题。支持嵌套、变量和逻辑等。可以让css更加简介、提高代码复用性、逻辑分明等等。 缺点:css的文件体积和复杂度不可控;增加了调试难度和成本 常用…

互联网营销师题库及答案同时做几个网站的seo

UltraCompare是一款功能强大的文件和文件夹比较工具,用于比较和合并文本、二进制和文件夹。它提供了丰富的功能和直观的界面,使用户能够轻松地比较和同步文件内容,查找差异并进行合并操作。 以下是UltraCompare软件的一些主要特点和功能&…

网站结构分析具体分析内容包头网站建设 奥北

#usage: go build [-o output] [-i] [build flags] [packages] go build的使用比较简洁,所有的参数都可以忽略,直到只有go build,这个时候意味着使用当前目录进行编译,下面的几条命令是等价的: go buildgo build .go b…

网站设计文档谁用腾讯风铃做网站的

环境 如上图所示, Runtime version的版本是JAVA 17 项目所需要JDK版本为JAVA 8 解决

响应式 网站建设免费广告行业网站建设

Atitit. 提升软件开发效率and 开发质量---java 实现dsl 4gl 的本质and 精髓 O725 1. DSL主要分为三类:外部DSL、内部DSL,以及语言工作台。 1 2. DSL规则 2 2.1. DSL 整洁的代码 2 2.2. DSL必须以文本代码的形式出现 2 2.3. DSL的语法应该尽可能地接近…

八方资源网做网站优化怎么样网页设计与制作教程第5版答案

标题:基于STM32F103C8T6单片机的1秒定时器设计与应用 摘要: 本文主要探讨了如何在STM32F103C8T6微控制器上利用内部定时器实现精确的1秒钟定时功能,并通过实际项目实施,验证其稳定性和可靠性。首先介绍了STM32F103C8T6单片机的特…

温州建设信息网站招聘求职网站html模板

一、VMware Workstation 虚拟机 先得安装 VM 虚拟机,没有的可以参考这篇文章安装 VM 虚拟机 如何在 VM 虚拟机中安装 Win10 操作系统保姆级教程(附链接)https://eclecticism.blog.csdn.net/article/details/135713915 二、Deft 镜像 下载…

网络app开发网站建设价格枣庄网站建设多少钱

一、原理图1. RS485接口6KV防雷电路设计方案图1 RS485接口防雷电路接口电路设计概述:RS485用于设备与计算机或其它设备之间通讯,在产品应用中其走线多与电源、功率信号等混合在一起,存在EMC隐患。本方案从…

长春网站建设大概需要多少钱建站技术服务

转载自 吃透这套架构演化图,从零搭建Web网站也不难 前言工作也有几多年了,无论是身边遇到的还是耳间闻到的,多多少少也积攒了自己的一些经验和思考,当然,博主并没有太多接触高大上的分布式架构实践,相对比较…

河北省水利建设市场网站网站外包合作

Oracle 发布对 Visual Studio Code 的 Java 插件支持,这个扩展插件通过基于 OpenJDK 的 javac 编译器和调试器接口的语言服务器,为流行的多语言集成开发环境提供 Java 支持。 VS Code 扩展的核心是Java语言服务器:这是一个使用语言服务器协议…

免费网站优化怎么做康定网站建设公司

AC通道:http://www.lydsy.com/JudgeOnline/problem.php?id2844 这题貌似HDU上有一道差不多的题,不过我没做过,也就没管了。 首先讲一个线性基的东西,大概就是这样: 然后就是一个什么性质:S异或起来会出现重…

做网站有必要用wordpress网站建设运营推广

转载公众号 | 美团技术团队常识性概念图谱,是围绕常识性概念建立的实体以及实体之间的关系,同时侧重美团的场景构建的一类知识图谱。本文介绍了美团常识性概念图谱构建的Schema,图谱建设中遇到的挑战以及建设过程中的算法实践,最后…

济南网站建设哪家便宜有一个做ppt的网站吗

原题链接: 198. 打家劫舍 题目描述: 你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入&a…

定制制作网站价格表wordpress sql查询分类

1 type_traits 的概述 type_traits 是 C 标准模板库(STL)中的一个头文件,它定义了一系列模板类,这些模板类在编译期获取某一参数、某一变量、某一个类等的类型信息,主要用于进行静态检查。通过使用 type_traits&#…

成都php网站制作程序员空壳网站清理

文章目录 roles批量替换文件 role 的依赖关系role 的实际案例 roles tasks 和 handlers ,那怎样组织 playbook 才是最好的方式呢?简 单的回答就是:使用 Roles Roles 基于一个已知的文件结构,去自动的加载 vars,tasks 以…

电脑制作网站用哪个软件深圳网页搜索排名提升

从事分布式服务器开发工作的都会遇到,linux下open_file的值默认是1024;max user processes的值默认是4096,在实际用于中,这两个值严重不足,常常需要调整这两个值。默认配置如下: 可以通过以下两种方式修改&…

开封网站开发自建商城网站

P2656 采蘑菇 题意&#xff1a; 有n个点&#xff0c;m个单向边&#xff0c;每个边都有边权&#xff0c;如果经过这个边&#xff0c;可以获得其边权&#xff0c;而其边权会变成原来的p倍(0.1<p<0.8)&#xff0c;向下取整 从s点出发&#xff0c;问最多可以采到的蘑菇 题…

php网站开发意思谢闵行

本文讲解Qt图像处理-基于OpenCv的图像二值化处理 一、概述 图像二值化原理 图像二值化就是将图像上的像素点的灰度值设置为0或255,也就是将整个图像呈现出明显的黑白效果的过程。图像的二值化使图像中数据量大为减少,从而能凸显出目标的轮廓。 要得到二值化图像,首先要把…

淄博网站建设公司有几家用绿色做图标的网站

1.首先在你需要实现下拉刷新页面的json文件中写入"enablePullDownRefresh": true。 2.在js文件的onPullDownRefresh() 事件中实现下拉刷新。 实现代码 onPullDownRefresh() {console.log(开始下拉刷新)wx.showNavigationBarLoading()//在标题栏中显示加载图标this.d…