数据--第39课 - 二叉树课后练习

第39课 - 二叉树课后练习

1. 输的相等比较(去世科技笔试题)

编写一个函数用于比较两棵二叉树是否相等。(二叉树相等指的是两棵树中的结点在位置上相互对应,且对应位置上保存的数据相同。)

函数原型如下:

int compare_bin_tree(RTreeNode* bt1, BTreeNode* bt2);

2. 单度结点删除(诚迈科技面试题)

编写一个函数用于删除二叉树中的度为1的所有结点。

要求:结点删除后,其唯一的子节点代替它的位置。

原文地址:https://www.cnblogs.com/free-1122/p/11336063.html

时间: 2024-11-08 21:32:07

数据--第39课 - 二叉树课后练习的相关文章

数据-第17课-栈课后练习

第17课-栈课后练习 1. 分析顺序栈和链式栈各个操作的算法时间复杂度. 2. 我们在创建顺序栈时将队尾定义为栈顶,而在创建链式栈时将队头定义为栈顶.那么我们反过来可行吗(即:顺序栈操作队头,链式栈操作队尾)?为什么? 3. 将后缀表达式的转换和计算合并为一个完整的程序,当用户输入合法的s四则运算表达式时直接给出结果. 提示: l  示例中只能处理每个数字为0—9的情况,如何扩展? l  如何判断表达式的输入是否合法? 原文地址:https://www.cnblogs.com/free-1122

数据--第21课-递归课后练习

第21课-递归课后练习 1. permutation.c中的全排列算法只能处理集合中的元素各不相同的情况.设计算法,使其能够对重复元素的集合进行全排列. 2. 编程查找一个迷宫从起点到终点的通路! 提示 (1)可以用一个二维数组表示迷宫. l  元素1表示障碍. l  元素0表示可通行. (2)创建一个和迷宫等大小的二维数组作为标记数组. l  当标记数组位置为0且迷宫对应位置为 0时,可通行 . (3)利用回溯法“探路”. l  当前路不可通行时,在标记数组对应位置标记1,并回溯. 是否可以找

python环境下使用mysql数据及数据结构和二叉树算法(图)

python环境下使用mysql数据及数据结构和二叉树算法(图):1 python环境下使用mysql2使用的是 pymysql库3 开始-->创建connection-->获取cursor-->操作-->关闭cursor->关闭connection->结束45 代码框架6 import pymysql.cursors7 ###连接数据库8 connection = pymysql.connect(host='127.0.0.1',port=3306,user='roo

数据--第36课 - 遍历二叉树

第36课 - 遍历二叉树 1. 什么是遍历 单链表的遍历是指从第一个节点开始(下标为0的结点),按照某种次序一次访问每一个结点. 二叉树的遍历是指从根节点开始,按照某种次序一次访问二叉树中的所有结点. 2. 前序遍历 若二叉树为空:空操作返回. 若二叉树不为空:访问根节点中的数据,前序遍历左子树,前序遍历右子树. 结果:1,2,4,8,9,5,10,3,6,7 3. 中序遍历 若二叉树为空:空操作返回. 若二叉树不为空:中序遍历左子树,访问根节点中的数据,中序遍历右子树. 结果:8,4,9,2,

数据--第38课 - 霍夫曼树

第38课 - 霍夫曼树 1. 最初的解决方案 对于文本“BADCADFEED”的传输而言,因为重复出现的只有“ABCDEF”这六个字符,因此可以用下面的方式编码: A B C D E F 000 001 010 011 100 101 接收方可以根据每3个bit进行一次字符解码的方式还原文本信息. 2. 存在的问题 这样的编码需要30个bit才能表示10个字符.容易出错. 3. 改进 避免每个字符都占用相同的bit位. A B C D E F 01 1001 101 00 11 1000 25个

3月7日信息系统集成第一课的课后作业

作业题目:本节课的重点. 内容如下: (1)国家信息化体系六要素: a)信息技术应用:龙头: b)信息资源:国家信息化得核心任务,取得实效的关键: c)信息网络:是基础,分为电信网.广播电视网和计算机网: d)信息技术和产业: e)信息化人才:成功之本,信息化建设的关键: f)信息系统政策法规和标准规范:根本保障. (2)电子政务: a)需求主导,突出重点. b)政务内网(副省级以上政府部门办公网)和政务外网(政府的业务专网),两网之间是物理隔离.政务外网和互联网之间是逻辑隔离. c)电子政务的

第六十五课 二叉树中属性操作的实现

递归功能函数: 1 int count(BTreeNode<T>* node) const 2 { 3 return (node != NULL) ? (count(node->left) + count(node->right) + 1) : 0; 4 } 功能函数如下: 1 int height(BTreeNode<T>* node) const 2 { 3 int ret = 0; 4 5 if( node != NULL ) 6 { 7 int lh = hei

数据-第2课-数据的艺术

第2课-数据的艺术 数据结构起源 (1) 计算机从解决数值计算问题到解决生活中的问题. (2) 现实生活中的问题涉及不同个体间的复杂联系. (3) 需要在计算机程序中描述生活中个体间的. 数据结构主要研究非数值计算程序问题中的操作对象以及它们之间的关系. 关键概念 (1)数据 – 程序的操作对象,用于描述客观事物. 数据的特点: l 可以输入到计算机. l 可以被计算机程序处理. 数据是一个抽象的概念,将其进行分类后得到程序设计语言中的类型.如:int,float,char等等. (2)数据元素

数据-第5课-线性表的本质

第5课-线性表的本质 线性表的定义 (1) 线性表(List)是零个或多个数据元素的集合. (2) 线性表中的数据元素之间是有顺序的. (3) 线性表中的数据元素个数是有限的. (4) 线性表中的数据元素的类型必须相同. 定义: 线性表是具有相同类型的 n( ≥ 0)个数据元素的有限序列 (a1, a2,...,an)  ai表示项,n表示长度. 线性表的性质 (1) a0为线性表的第一个元素,只有一个后继. (2) an为线性表的最后一个元素,只有一个前驱. (3) 除a0和an外的其它元素a