- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
平衡二叉树c语言代码
[
/*
程序作者, monkeylee
程序名, 二叉树平衡因子称
程序功能, 机生成用树要求的整~生成二叉树;无重树,~随个数数
可以树行生成、遍树、树二叉树~而且树行树树的树~找找
如果有到树点就把树树接到树上没找个
能树树示树点的树生树序、平衡因子;失树,~树点树*/
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
自引用树构//
struct treeNode
{
树点树int data; //
平衡因子int balance; //
生成树序int order; //
指向左子树的指树struct treeNode *left; //
指向右子树的指树struct treeNode *right; //
struct treeNode *father;
树定树构}; /*END */
typedef struct treeNode TreeNode;typedef TreeNode * TreeNodePtr;函原型数/**/
插入树点void insertNode(TreeNodePtr &rootPtr,int value,int order); //
中序遍树void inOrder(TreeNodePtr rootPtr); //
菜树int instructions(); //
树找void search(TreeNodePtr &rootPtr,int value,int n); //
//----------------------------------------------------------------------------------
主函数/**/
void main()
{
要操作的据数int item; //
存树机制的树量随int choices; //
循树树器数int i; //
树点个数int n; //
树在树始的树候树空TreeNodePtr rootPtr=NULL; //
while(choices=instructions())
{
switch(choices)
{
case 1:
rootPtr=NULL;
树入要生成二叉树的树点数printf(">>");
scanf("%d",&n);
if(n<=0)
{
树入树点必树大于等于数printf("1\n");
break;
}
srand(time(NULL));
for(i=1;i<=n;i++)
{
item=rand()%(10*n);
insertNode(rootPtr,item,i);
}/*END for*/
break;
case 2:
中序遍树printf(":\n");
if(rootPtr==NULL)
break;
inOrder(rootPtr);
printf("\n");
break;
case 3:
树入要的找数printf(">>");
scanf("%d",&item);
search(rootPtr,item,i);
i++;
break;
default:
树树入正的树树确printf("!\n");
}/*END switch*/
}
printf("\n");
函数}/*END main*/
//----------------------------------------------------------------------------------
int instructions()
{
int choice;
菜树生成 遍树 树 找退出printf("\n: 1.2.3.0.\n>>");
scanf("%d",&choice);
return(choice);
}/*END instructions*/
//----------------------------------------------------------------------------------
将插树点入到树中/**/
void insertNode(TreeNodePtr &rootPtr,int value,int order)
{
生成新树点~到一要树的地方找个//
TreeNodePtr currentPtr=rootPtr;
TreeNodePtr newPtr;
TreeNodePtr prePtr=rootPtr;
if(newPtr=(TreeNodePtr)malloc(sizeof(TreeNode)))
{
newPtr->data=value;
newPtr->balance=0;
newPtr->order=order;
newPtr->
您可能关注的文档
- 耐热钢焊条简介.doc
- 小小问候温暖你我活动方案.doc
- 江苏南京中考物理试题.doc
- 中国国家标准 GB/T 21336.1-2023地理信息 数据质量 第1部分:总体要求.pdf
- 《GB/T 21336.1-2023地理信息 数据质量 第1部分:总体要求》.pdf
- GB/T 21336.1-2023地理信息 数据质量 第1部分:总体要求.pdf
- 中国国家标准 GB/Z 43427-2023优质服务 设计高品质服务以实现极致顾客体验.pdf
- GB/Z 43427-2023优质服务 设计高品质服务以实现极致顾客体验.pdf
- 《GB/Z 43427-2023优质服务 设计高品质服务以实现极致顾客体验》.pdf
- 中国国家标准 GB/T 43263-2023纳米技术 纤维素纳米晶的表征方法.pdf
- 中国国家标准 GB/T 30117.4-2023灯和灯系统的光生物安全 第4部分:测量方法.pdf
- 《GB/T 30117.4-2023灯和灯系统的光生物安全 第4部分:测量方法》.pdf
- GB/T 9711-2023石油天然气工业 管线输送系统用钢管.pdf
- 中国国家标准 GB/T 9711-2023石油天然气工业 管线输送系统用钢管.pdf
- GB/T 43282.1-2023塑料 暴露于海水中塑料材料需氧生物分解的测定 第1部分:采用分析释放二氧化碳的方法.pdf
- 《GB/T 9711-2023石油天然气工业 管线输送系统用钢管》.pdf
- GB/T 43282.2-2023塑料 暴露于海水中塑料材料需氧生物分解的测定 第2部分:采用测定密闭呼吸计内需氧量的方法.pdf
- 《GB/T 43282.2-2023塑料 暴露于海水中塑料材料需氧生物分解的测定 第2部分:采用测定密闭呼吸计内需氧量的方法》.pdf
- 中国国家标准 GB/T 43282.1-2023塑料 暴露于海水中塑料材料需氧生物分解的测定 第1部分:采用分析释放二氧化碳的方法.pdf
- 中国国家标准 GB/T 43282.2-2023塑料 暴露于海水中塑料材料需氧生物分解的测定 第2部分:采用测定密闭呼吸计内需氧量的方法.pdf
文档评论(0)