.


:




:

































 

 

 

 


.




. , ' , . ', , . , , .

++ .

. .

class Node

{ public:

char d; //

Node *next; //

Node *prev; //

Node (char dat = 0) {d = dat; next = 0; prev = 0;} //

};

class Set

{ Node *pbeg, *pend; //

public:

Set() { pbeg = 0; pend = 0; }//

~Set();//

void include(char d); //

Node *find(char d); //

bool exclude(char key); //

int power(); //

void print();//

};

. include . find . . .

Node * Set::find(char d)

{ Node *pv = pbeg;

while(pv) { if(pv->d == d) { break;} pv = pv->next; }

return pv;}

 

void Set::include(char d)

{ if(Node *key=find(d)) return; // key, , 0

Node *pv = new Node(d);

if(!pbeg) { pbeg = pend = pv; }

else { pv->prev = pend; pend->next = pv; pend = pv; }

}

exclude :

bool Set::exclude(char key)

{ if(Node *pkey = find(key))

{ if(pbeg == pkey) //

{pbeg = pbeg->next; pbeg->prev = 0;}

else if(pkey == pend) //

{pend = pend->prev; pend->next = 0;}

else //

{(pkey->prev)->next = pkey->next;

(pkey->next)->prev = pkey->prev; }

delete pkey;

return true;}

return false;

}

ʳ . . . . . power :

power print :

int Set::power()

{ int p=0;

Node *pv = pbeg;

while(pv) { p++; pv = pv->next;}

return p;

}

void Set::print()

{ Node *pv = pbeg;

cout << endl << " Set: ";

while(pv) {cout << pv->d << " "; pv = pv->next;}

cout << endl;}

' - :

Set::~Set()

{ if(pbeg) {Node *pv = pbeg;

while(pv) {pv = pv->next; delete pbeg; pbeg = pv; }

}

}

, Set. 'BETA', ; 'A', 'T', 'X' , ; 'T', .

void main()

{ Set S;

S.include('B');

S.include('E');

S.include('T');

S.include('A');

S.print();

cout<<" Power of set="<<S.power();

S.include('A');

S.include('T');

S.include('X');

S.print();

cout<<" Power of set="<<S.power();

if(!S.exclude('T')) {cout << "element not found"<< endl;}

S.print();

cout<<" Power of set="<<S.power();

getch();}

:

B , , ;

' B , , A, B;

B , , , B;

A B , , . , {1,2,3} {3,4} {1,2,4}.





:


: 2016-07-29; !; : 369 |


:

:

, .
==> ...

1801 - | 1614 -


© 2015-2024 lektsii.org - -

: 0.008 .