网站301做排名网站 医院信息化建设

news/2025/10/9 2:46:00/文章来源:
网站301做排名,网站 医院信息化建设,高端网站的建设,网络广告是什么意思本文实例为大家分享了C语言二叉排序(搜索)树实例代码#xff0c;供大家参考#xff0c;具体内容如下/**1.实现了递归 非递归插入(创建)二叉排序(搜索)树#xff1b;分别对应Insert_BinSNode(TBinSNode* T,int k),NonRecursion_Insert_BinSNode(TBinSNode* T,int k);2.实现了…本文实例为大家分享了C语言二叉排序(搜索)树实例代码供大家参考具体内容如下/**1.实现了递归 非递归插入(创建)二叉排序(搜索)树分别对应Insert_BinSNode(TBinSNode* T,int k),NonRecursion_Insert_BinSNode(TBinSNode* T,int k);2.实现了递归 非递归查找 二叉排序(搜索)树 分别对应Find_BinSNode(TBinSNode *T,int s),NonRecursion_Find_BinSNode(TBinSNode *T,int s);3. 实现了非递归删除 二叉排序(搜索)树分别对应Delete_BinSNode()4. 实现了递归先序、中序、后序遍历二叉排序(搜索)树分别对应Pre_Print_BinSNode(TBinSNode T),In_Print_BinSNode(TBinSNode T),Post_Print_BinSNode(TBinSNode T);*/#include#includetypedef struct BinSTreeNode{int num;struct BinSTreeNode *lchild,*rchild;}BinSNode,*TBinSNode;int Empty_Tree(TBinSNode T){if(!T){return 1;}else{return 0;}}/*---------------------非递归方法 二叉排序树的删除-----------------*/void Delete_BinSNode(TBinSNode *T,int del){TBinSNode cur,pre,lt,rblast;cur*T;preNULL;//如果二叉排序树为空if(Empty_Tree(cur)){printf(Sorry,Tree is none);return;}//如果二叉排序树不为空先找到即将删除的元素del.这里再次实现一遍查找当然也可以修改一下Find类的函数while(cur cur-num!del){if(delcur-num){precur;curcur-rchild;}else{precur;curcur-lchild;}}if(!cur){printf(Sorry,you want to delete the node,which is non-existent);return;}if(cur-numdel){printf(find the delete node,wait a minute.......\n);}//如果找到待删除的结点立刻判断该结点有无左子树//情况一待删除结点无左子树if(!cur-lchild){if(preNULL){cur*T;*T(*T)-rchild;free(cur);return;}if(pre-lchild pre-lchild-numdel){pre-lchildcur-rchild;free(cur);return;}if(pre-rchild pre-rchild-numdel){pre-rchildcur-rchild;free(cur);return;}}//情况二待删除的结点有左子树。if(cur-lchild){ltcur-lchild;//情况2.1该左子树无右子树if(!lt-rchild){if(pre-lchild pre-lchild-numdel){pre-lchildlt;free(cur);return;}if(pre-rchild pre-rchild-numdel){pre-rchildlt;free(cur);return;}}//情况2.2:该左子树有右子树if(lt-rchild){while(lt-rchild){rblastlt; //该左子树中最大的结点的前一个结点.ltlt-rchild;}cur-numlt-num;rblast-rchildlt-lchild;free(lt);return;}}}/*--------------------递归方法 查找 二叉排序树-------------------*/void Find_BinSNode(TBinSNode T,int s){if(sT-num){printf(%d\n,T-num);return;}if(sT-num){Find_BinSNode(T-rchild,s);}else{Find_BinSNode(T-lchild,s);}}/*-------------------非递归方法 查找二叉排序树--------------------*/void NonRecursion_Find_BinSNode(TBinSNode T,int s){if(Empty_Tree(T)){printf(Tree is none);return;}while(T s!T-num ){if(sT-num){TT-rchild;}else{TT-lchild;}}if(!T){printf(Sorry,Not Find!);exit(0);}if(sT-num){printf(%d\n,T-num);}}/*-----------------递归方法 创建/插入 二叉排序树------------------*/void Insert_BinSNode(TBinSNode *T,int k){// int n;TBinSNode node;// scanf(%d,n);if(Empty_Tree(*T)){*T(TBinSNode)malloc(sizeof(BinSNode));(*T)-numk;(*T)-lchild(*T)-rchildNULL;return;}else{if(k(*T)-num){Insert_BinSNode((*T)-rchild,k);}else{Insert_BinSNode((*T)-lchild,k);}}}/*----------------------先序遍历二叉排序树----------------------------------*/void Pre_Print_BinSNode(TBinSNode T){if(T){printf(%d ,T-num);Pre_Print_BinSNode(T-lchild);Pre_Print_BinSNode(T-rchild);}}/*-----------------------中序遍历二叉排序树-----------------------------------*/void In_Print_BinSNode(TBinSNode T){if(T){In_Print_BinSNode(T-lchild);printf(%d ,T-num);In_Print_BinSNode(T-rchild);}}/*-----------------------后序遍历二叉排序树-----------------------------------*/void Post_Print_BinSNode(TBinSNode T){if(T){Post_Print_BinSNode(T-lchild);Post_Print_BinSNode(T-rchild);printf(%d ,T-num);}}/*---------------------非递归 创建/插入 二叉排序树---------------------------*/void NonRecursion_Insert_BinSNode(TBinSNode *T,int k){//如果为空的二叉排序树TBinSNode cur,p,t;t*T;if(!*T){*T(TBinSNode)malloc(sizeof(BinSNode));(*T)-numk;(*T)-lchild(*T)-rchildNULL;return;}else{ //二叉排序树不为空。while(t){if(kt-num){curt;tt-rchild;}else{curt;tt-lchild;}}p(TBinSNode)malloc(sizeof(BinSNode));p-numk;p-lchildp-rchildNULL;if(kcur-num){cur-rchildp;}if(knum){cur-lchildp;}}}int main(void){TBinSNode TNULL;int k,s,del;//创建的 查找的 删除的while(scanf(%d,k) k){// Insert_BinSNode(T,k);NonRecursion_Insert_BinSNode(T,k);}// scanf(%d,s);// Find_BinSNode(T,s);// NonRecursion_Find_BinSNode(T,s);Pre_Print_BinSNode(T);scanf(%d,del);Delete_BinSNode(T,del);Pre_Print_BinSNode(T);return 0;}以上就是本文的全部内容希望对大家的学习有所帮助也希望大家多多支持编程小技巧。总结以上是编程之家为你收集整理的C语言二叉排序(搜索)树实例全部内容希望文章能够帮你解决C语言二叉排序(搜索)树实例所遇到的程序开发问题。如果觉得编程之家网站内容还不错欢迎将编程之家网站推荐给程序员好友。本图文内容来源于网友网络收集整理提供作为学习参考使用版权属于原作者。小编个人微信号 jb51ccc喜欢与人分享编程技术与工作经验欢迎加入编程之家官方交流群

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

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

相关文章

视频网站后台设计班级网站制作教程

C Primer(第5版) 练习 11.2 练习 11.2 分别给出最适合使用list、vector、deque、map以及set的例子。 环境:Linux Ubuntu(云服务器) 工具:vim 解释 list的元素是有序的,可以重复的&#xff0…

有那些网站宁夏手机网站建设

反射 1 定义2 用途(了解)3 反射基本信息4 反射相关的类(重要)4.1 Class类(反射机制的起源 )4.1.1 Class类中的相关方法(方法的使用方法在后边的示例当中) 4.2 反射示例4.2.1 获得Class对象的三种方式4.2.2 反射的使用 5、反射优点和缺点 1 定义 Java的反…

网站建设专业书入门wordpress 帝国cms

一、K-means聚类算法 K均值聚类(K-means clustering)是一种常见的无监督学习算法,用于将数据集中的样本划分为K个不同的类别或簇。它通过最小化样本点与所属簇中心点之间的距离来确定最佳的簇划分。 K均值聚类的基本思想如下: …

做网站收广告费网站简单设计

最小实现和互质分式 2023年12月12日 文章目录 最小实现和互质分式1. 实现问题2. SISO严格正则系统的实现2.1 能控标准1型实现2.2 能观标准2型实现2.3 能观标准1型实现2.4 能控标准2型实现2.5 最小实现2.6 完全表征 3. 计算互质分式3.1 使用西尔韦斯特结式 4. SISO基于Markov参…

汕头高端网站建设前端外包

在 react antd 中,对表单做在前置项未填写时禁用后置项交互并提示的效果。 情景 最近有这么个需求,某个业务中,要填写一张表单,其中有这样两项:选择数据连接和选择数据表,数据表是数据连接下所拥有的表。…

wordpress菜单显示选项打不开优化公司治理结构的措施

【小白从小学Python、C、Java】 【计算机等级考试500强双证书】 【Python-数据分析】 在函数内部定义函数 在以下代码片段中,输出的结果是什么? def outer_function(x): def inner_function(y): return x y return inner_function add_five outer_func…

做羞羞事的网站建网站要租服务器吗

参考文章:深入理解JS引擎的执行机制 JavaScript 异步、栈、事件循环、任务队列 我的笔记:ES系列之Promise async 和 await Event Loop 前提 js是单线程的 js的Event Loop是JS的执行机制,深入了解JS的执行,就等于深入了解JS里的event …

美食城网站建设策划书济南百度推广

目录 一、mysql之存储过程的相关知识 1)存储过程的概念 2)存储过程的优点 二、存储过程的管理 1)创建存储过程 基本格式: 2)调用存储过程 格式: call 存储过程名称 3)查看存储过程 查…

做网站选什么配置电脑上海生活门户网

选择使用静态 IP 还是 DHCP(动态主机配置协议)取决于您的网络需求和环境。下面是它们的一些特点和适用场景: 静态 IP: 固定的 IP 地址:静态 IP 是手动配置在设备上的固定 IP 地址,不会随时间或网络变化而改…

农业网站怎么做郑州seo顾问培训

链表 链表(Linked List)是一种常见的数据结构,用于存储一系列具有相同类型的元素。链表由节点(Node)组成,每个节点包含两部分:数据域(存储元素值)和指针域(指…

Spec Kit 终结AI瞎写代码

Spec Kit 终结AI瞎写代码告别AI胡说八道!GitHub开源神器SpecKit来了! 先去看看这个教程吧:目录spec-kit是什么?核心理念(SDD 四个关键词)SpecKit组成与目录结构SpecKit典型适用场景安装过程完整工作流程阶段0:B…

长宁网站建设优化seowordpress高级检索插件

动态规划的算法题往往都是各大公司笔试题的常客。在不少算法类的微信公众号中,关于“动态规划”的文章屡见不鲜,都在试图用最浅显易懂的文字来描述讲解动态规划,甚至有的用漫画来解释,认真读每一篇公众号推送的文章实际上都能读得…

怎么知道网站有没有被收录嘉定西安网站建设

1、 文档目标 对 JTAG 接口有更多的认识,在遇到关于 JTAG 接口问题时有一些排查的思路。 2、 问题场景 在使用调试器过程时,免不了要接触到 JTAG 接口,当出现连接不上时,就不知道从哪来进行排查。 3、软硬件环境 1 软件版本&am…

广西住房和城乡建设厅网站证件谷歌推广怎么样

Python 3最重要的新特性大概要算是对文本和二进制数据作了更为清晰的区分。文本总是Unicode,由str类型表示,二进制数据则由bytes类型表示。Python 3不会以任意隐式的方式混用str和bytes,正是这使得两者的区分特别清晰。你不能拼接字符串和字节…

公司网站建设怎么计费2021跨境电商最火的产品

目录 一、v-show二、v-if2.1 基本使用2.2 条件渲染分组2.3 与 v-else-if、v-else 结合使用 三、v-if vs v-show四、测试案例 本节条件渲染所涉及到的指令有: v-showv-ifv-else-ifv-else 一、v-show 1. 用法: 语法: v-show" 表达式"&#xff…

做搜狗网站点击WordPress图片上传最大尺寸

第一段 第二段 实现思路 通过 GestureDetector 的 Drag 方法,动态改变Dialog的高度,通过设置一个最大高度和最小高度分成两层进行展示 实现 常用的展示BottomSheet的方法为 showModalBottomSheet /// 设置最高最好以高度的比例进行设置,方…

12388网站建设管理情况PHP网站开发与管理设计心得

基本使用TortoiseGit 操作本地仓库(分支) 分支的概念 几乎所有的版本控制系统都以某种形式支持分支。 使用分支意味着你可以把你的工作从开发主线上分离开来,避免影响开发主线。多线程开发,可以同时开启多个任务的开发,多个任务之间互不影响。 为何要…

莒南做网站网站建设技术的实现

第十三题讲解人:张小龙 8.23邮箱:2304940425qq.com一.什么是final?final是java中的一个关键字,可以用来修饰变量、方法和类。用关键词final修饰的域成为最终域。用关键词final修饰的变量一旦赋值,就不能改变&…

做网站的如何找业务常州网上车管所

在 Web.config 中创建数据库连接串我们需要在网站的配置文件中增加一些行&#xff0c;以便 Entity Framework 知道如何连接到我们的数据库&#xff0c;双击Web.config 文件。 卷到文件的最后&#xff0c;然后增加一个 <connectionStrings> 的配置节&#xff0c;如何所示&…

嘉兴网站建设企业网站制作军事新闻大事

原标题&#xff1a;2018河南高考一分一段统计表&#xff0c;查排名必备&#xff01;&#xff1a;点击这里信息省招办公布了2018年普通高招分数段统计表&#xff0c;对每个分数段有多少考生进行了详细统计。你考了多少分&#xff1f;处在哪个位置&#xff1f;快来看看&#xff0…