数据结构1

//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]);;
}


你可能感兴趣的:(数据结构1)