数据结构清华大学出版社三元组(严蔚敏)(第一次写这个不喜勿喷也是刚入门的小白,希望大佬可以指点一下)

数据结构清华大学出版社三元组(严蔚敏)

思路的构建 三元组的实现首先搭建必要的头文件以及相关函数的编写,最后通过主函数调用实现最终的功能。
数据集
D={e1,e2,e3|e1,e2,e3∈ElemSet}
操作集
1.构造三元组

Status InitTriplet(Triplet &T,ElemType v1,ElemType v2,ElemType v3)
{
 T=(ElemType*)malloc(3*sizeof(ElemType));
 if(T==NULL)//判断是否分配成功 
 {
  exit(OVERFLOW); 
 }
 T[0]=v1;
 T[1]=v2;
 T[2]=v3;
 return OK;
} 

2.销毁三元组

Status DestroyTriplet(Triplet &T)
{
 free(T);//先释放内存 
 T=NULL;
 return OK; 
}

3.取三元组的一个数

Status Get(Triplet &T,Status i,ElemType &e)
{
 if(i<1||i>3)
 {
  return ERROR;
 }
 else
 {
  e=T[i-1];
 }
 return OK;
} 

4.在三元组中存放一个数

Status Put(Triplet &T,Status i,ElemType e)
{
 if(i<1||i>3)
 {
  return ERROR;
 }
 else
 {
  T[i-1]=e;
 }
 return OK;
} 

5.判断三元组是否升序

Status IsAscending(Triplet T)
{
 return(T[0]<T[1])&&(T[1]<T[2]);
}

6.判断三元组是否降序

Status IsDescending(Triplet T)
{
 return(T[0]>T[1])&&(T[1]>T[2]);
} 

7.求最大值

Status Max(Triplet T,ElemType &e)
{
 e=(T[0]>=T[1])?((T[0]>=T[2])?T[0]:T[2]):((T[1]>=T[2])?T[1]:T[2]);
 return OK;
} 

8.求最小值

Status Min(Triplet T,ElemType &e)
{
 e=(T[0]<=T[1])?((T[0]<=T[2])?T[0]:T[2]):((T[1]<=T[2])?T[1]:T[2]);
 return OK;
}

运行截图

下面是完成的代码:可以免费下载
代码下载

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值