实验十六 二叉排序树的建立与查找

本文通过代码展示了如何使用C语言实现二叉排序树的插入和查找操作,并给出了一个具体的十二个月份字符串排序的例子。在示例中,尝试插入数据并查找“Sept”,但遇到了运行错误。对比了个人代码和老师的代码,两者基本相同。
摘要由CSDN通过智能技术生成

1、已知一个个数为12的数据元素序列为{Dec,Feb,Nov,Oct,June,Sept,Aug,Apr,May, July,Jan,Mar},要求:
(1)按各数据元素的顺序(字母大小顺序)构造一棵二叉排序数,并中序打印排序结果。
(2)查找数据"Sept"是否存在。

#include "stdio.h"
#include "stdlib.h"
#include "malloc.h"
#include "string.h"
#define maxsize 15


typedef char KeyType;

typedef struct
{
KeyType key[maxsize];
}DataType;


typedef struct node
{ DataType data;
struct node * leftchild;
struct node * rightchild;

}BiTreeNode;

//查找算法

int Search (BiTreeNode *root,DataType item)
{
BiTreeNode *p;

if (root!=NULL)
{
p=root;
while (p!=NULL)
{
if (strcmp(p->data.key,item.key)==0) return 1;/*查找成功*/
if (strcmp(item.key,p->data.key)>0) p=p->rightchild;
else p&#

  • 6
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值