您的位置:首页 > 理论基础 > 数据结构算法

数据结构1

2016-03-06 00:00 176 查看
摘要: 很久没有写过博客了,今儿准备重新复习数据结构,把写的程序记录一下。第一章抽象类型triplet的表示和实现。编程语言C++。

//triplet类
class triplet
{
public:
triplet(int &nElem1, int &nElem2, int &nElem3);
~triplet();
bool Get(int index, int &elem);
bool Put(int index, int elem);
bool isAsc();
bool isDesc();
int Max();
int Min();
private:
int elem[3];
};
//create nes triplet
triplet::triplet(int &nElem1, int &nElem2, int &nElem3)
{
elem[0] = nElem1;
elem[1] = nElem2;
elem[2] = nElem3;
}

triplet::~triplet()
{
elem[0] = 0;
elem[1] = 0;
elem[2] = 0;
}
//get elem
bool triplet::Get(int index, int &elem)
{
if(index < 1 || index > 3)
return false;
elem = this->elem[index - 1];
return true;
}

bool triplet::Put(int index, int elem)
{
if(index < 1 || index > 3)
return false;
this->elem[index - 1] = elem;
return true;
}
//elems up
bool triplet::isAsc()
{
return (elem[0] <= elem[1]) && (elem[1] <= elem[2]);
}

bool triplet::isDesc()
{
return (elem[0] >= elem[1]) && (elem[1] >= elem[2]);
}

int triplet::Max()
{
return (elem[0] >= elem[1]) ? ((elem[0] >= elem[2]) ? elem[0] : elem[2])
: ((elem[1] >= elem[2]) ? elem[1] : elem[2]);
}

int triplet::Min()
{
return (elem[0] <= elem[1]) ? ((elem[0] <= elem[2]) ? elem[0] : elem[2])
: ((elem[1] <= elem[2]) ? elem[1] : elem[2]);;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: